diff --git a/LICENSE.md b/LICENSE.md
new file mode 100644
index 00000000..d775f588
--- /dev/null
+++ b/LICENSE.md
@@ -0,0 +1,22 @@
+
+The MIT License (MIT)
+
+Copyright (c) 2019
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/README.md b/README.md
new file mode 100644
index 00000000..6e59756b
--- /dev/null
+++ b/README.md
@@ -0,0 +1,45 @@
+
+
+# Greg
+
+![badge-release](https://img.shields.io/github/v/release/strukturart/feedolin?include_prereleases&style=plastic)
+[![badge-bhackers](https://img.shields.io/badge/bHackers-bHackerStore-orange)](https://store.bananahackers.net/#feedolin)
+![badge-downloads](https://img.shields.io/github/downloads/strukturart/feedolin/total)
+
+An easy to use calendar for KaiOs
+
+## How to install
+
+The app is not available through the https://www.kaiostech.com/store/ They are only accepting apps that are monetized using KaiAds SDK, and that's something I'm not interested in integrating.
+For this reason, you have to side-load (upload) the app to your phone if you want to use it.
+Martin Kaptein wrote a comprehensive, step-by-step article that you can use to side-load the app. If you prefer a video, this one on YouTube walks you through the process.
+The Developer Portal also contains a guide, and if nothing seems to work, you can ask for help on Discord.
+You can download the latest version from the Releases page.
+The app is not auto-updating. To update it, you have to follow the same steps you took when installing it.
+
+## How to use
+
+## to do
+
+## Donation
+
+If you use the app often, please donate an amount to me.
+
+
+
diff --git a/application/assets/css/grid.css b/application/assets/css/grid.css
new file mode 100644
index 00000000..f7c5b6c3
--- /dev/null
+++ b/application/assets/css/grid.css
@@ -0,0 +1,577 @@
+/* G R I D */
+
+.grid-col-1 {
+ min-width: 10px;
+ max-width: 10px;
+}
+
+.grid-col-2 {
+ min-width: 20px;
+ max-width: 20px;
+}
+
+.grid-col-3 {
+ min-width: 30px;
+ max-width: 30px;
+}
+
+.grid-col-4 {
+ min-width: 40px;
+ max-width: 40px;
+}
+
+.grid-col-5 {
+ min-width: 50px;
+ max-width: 50px;
+}
+
+.grid-col-6 {
+ min-width: 60px;
+ max-width: 60px;
+}
+
+.grid-col-7 {
+ min-width: 70px;
+ max-width: 70px;
+}
+
+.grid-col-8 {
+ min-width: 80px;
+ max-width: 80px;
+}
+
+.grid-col-9 {
+ min-width: 90px;
+ max-width: 90px;
+}
+
+.grid-col-10 {
+ min-width: 100px;
+ max-width: 100px;
+}
+
+.grid-col-11 {
+ min-width: 110px;
+ max-width: 110px;
+}
+
+.grid-col-12 {
+ min-width: 120px;
+ max-width: 120px;
+}
+
+.grid-col-13 {
+ min-width: 130px;
+ max-width: 130px;
+}
+
+.grid-col-14 {
+ min-width: 140px;
+ max-width: 140px;
+}
+
+.grid-col-15 {
+ min-width: 150px;
+ max-width: 150px;
+}
+
+.grid-col-16 {
+ min-width: 160px;
+ max-width: 160px;
+}
+
+.grid-col-17 {
+ min-width: 170px;
+ max-width: 170px;
+}
+
+.grid-col-18 {
+ min-width: 180px;
+ max-width: 180px;
+}
+
+.grid-col-19 {
+ min-width: 190px;
+ max-width: 190px;
+}
+
+.grid-col-20 {
+ min-width: 200px;
+ max-width: 200px;
+}
+
+.grid-col-21 {
+ min-width: 210px;
+ max-width: 210px;
+}
+
+.grid-col-22 {
+ min-width: 220px;
+ max-width: 220px;
+}
+
+.grid-col-23 {
+ min-width: 230px;
+ max-width: 230px;
+}
+
+.grid-col-24 {
+ min-width: 240px;
+ max-width: 240px;
+}
+
+.grid-col-25 {
+ min-width: 250px;
+ max-width: 250px;
+}
+
+.grid-col-26 {
+ min-width: 260px;
+ max-width: 260px;
+}
+
+.grid-col-27 {
+ min-width: 270px;
+ max-width: 270px;
+}
+
+.grid-col-28 {
+ min-width: 280px;
+ max-width: 280px;
+}
+
+.grid-col-29 {
+ min-width: 290px;
+ max-width: 290px;
+}
+
+.grid-col-30 {
+ min-width: 300px;
+ max-width: 300px;
+}
+
+.grid-col-31 {
+ min-width: 310px;
+ max-width: 310px;
+}
+
+.grid-col-32 {
+ min-width: 320px;
+ max-width: 320px;
+}
+
+.grid-col-33 {
+ min-width: 330px;
+ max-width: 330px;
+}
+
+.grid-col-34 {
+ min-width: 340px;
+ max-width: 340px;
+}
+
+.grid-col-35 {
+ min-width: 350px;
+ max-width: 350px;
+}
+
+.grid-col-36 {
+ min-width: 360px;
+ max-width: 360px;
+}
+
+.grid-col-37 {
+ min-width: 370px;
+ max-width: 370px;
+}
+
+.grid-col-38 {
+ min-width: 380px;
+ max-width: 380px;
+}
+
+.grid-col-39 {
+ min-width: 390px;
+ max-width: 390px;
+}
+
+.grid-col-40 {
+ min-width: 400px;
+ max-width: 400px;
+}
+
+.grid-col-41 {
+ min-width: 410px;
+ max-width: 410px;
+}
+
+.grid-col-42 {
+ min-width: 420px;
+ max-width: 420px;
+}
+
+.grid-col-43 {
+ min-width: 430px;
+ max-width: 430px;
+}
+
+.grid-col-44 {
+ min-width: 440px;
+ max-width: 440px;
+}
+
+.grid-col-45 {
+ min-width: 450px;
+ max-width: 450px;
+}
+
+.grid-col-46 {
+ min-width: 460px;
+ max-width: 460px;
+}
+
+.grid-col-47 {
+ min-width: 470px;
+ max-width: 470px;
+}
+
+.grid-col-48 {
+ min-width: 480px;
+ max-width: 480px;
+}
+
+.grid-col-49 {
+ min-width: 490px;
+ max-width: 490px;
+}
+
+.grid-col-50 {
+ min-width: 500px;
+ max-width: 500px;
+}
+
+.grid-col-51 {
+ min-width: 510px;
+ max-width: 510px;
+}
+
+.grid-col-52 {
+ min-width: 520px;
+ max-width: 520px;
+}
+
+.grid-col-53 {
+ min-width: 530px;
+ max-width: 530px;
+}
+
+.grid-col-54 {
+ min-width: 540px;
+ max-width: 540px;
+}
+
+.grid-col-55 {
+ min-width: 550px;
+ max-width: 550px;
+}
+
+.grid-col-56 {
+ min-width: 560px;
+ max-width: 560px;
+}
+
+.grid-col-57 {
+ min-width: 570px;
+ max-width: 570px;
+}
+
+.grid-col-58 {
+ min-width: 580px;
+ max-width: 580px;
+}
+
+.grid-col-59 {
+ min-width: 590px;
+ max-width: 590px;
+}
+
+.grid-col-60 {
+ min-width: 600px;
+ max-width: 600px;
+}
+
+.grid-col-61 {
+ min-width: 610px;
+ max-width: 610px;
+}
+
+.grid-col-62 {
+ min-width: 620px;
+ max-width: 620px;
+}
+
+.grid-col-63 {
+ min-width: 630px;
+ max-width: 630px;
+}
+
+.grid-col-64 {
+ min-width: 640px;
+ max-width: 640px;
+}
+
+.grid-col-65 {
+ min-width: 650px;
+ max-width: 650px;
+}
+
+.grid-col-66 {
+ min-width: 660px;
+ max-width: 660px;
+}
+
+.grid-col-67 {
+ min-width: 670px;
+ max-width: 670px;
+}
+
+.grid-col-68 {
+ min-width: 680px;
+ max-width: 680px;
+}
+
+.grid-col-69 {
+ min-width: 690px;
+ max-width: 690px;
+}
+
+.grid-col-70 {
+ min-width: 700px;
+ max-width: 700px;
+}
+
+.grid-col-71 {
+ min-width: 710px;
+ max-width: 710px;
+}
+
+.grid-col-72 {
+ min-width: 720px;
+ max-width: 720px;
+}
+
+.grid-col-73 {
+ min-width: 730px;
+ max-width: 730px;
+}
+
+.grid-col-74 {
+ min-width: 740px;
+ max-width: 740px;
+}
+
+.grid-col-75 {
+ min-width: 750px;
+ max-width: 750px;
+}
+
+.grid-col-76 {
+ min-width: 760px;
+ max-width: 760px;
+}
+
+.grid-col-77 {
+ min-width: 770px;
+ max-width: 770px;
+}
+
+.grid-col-78 {
+ min-width: 780px;
+ max-width: 780px;
+}
+
+.grid-col-79 {
+ min-width: 790px;
+ max-width: 790px;
+}
+
+.grid-col-80 {
+ min-width: 800px;
+ max-width: 800px;
+}
+
+.grid-col-81 {
+ min-width: 810px;
+ max-width: 810px;
+}
+
+.grid-col-82 {
+ min-width: 820px;
+ max-width: 820px;
+}
+
+.grid-col-83 {
+ min-width: 830px;
+ max-width: 830px;
+}
+
+.grid-col-84 {
+ min-width: 840px;
+ max-width: 840px;
+}
+
+.grid-col-85 {
+ min-width: 850px;
+ max-width: 850px;
+}
+
+.grid-col-86 {
+ min-width: 860px;
+ max-width: 860px;
+}
+
+.grid-col-87 {
+ min-width: 870px;
+ max-width: 870px;
+}
+
+.grid-col-88 {
+ min-width: 880px;
+ max-width: 880px;
+}
+
+.grid-col-88 {
+ min-width: 880px;
+ max-width: 880px;
+}
+
+.grid-col-89 {
+ min-width: 890px;
+ max-width: 890px;
+}
+
+.grid-col-90 {
+ min-width: 900px;
+ max-width: 900px;
+}
+
+.grid-col-91 {
+ min-width: 910px;
+ max-width: 910px;
+}
+
+.grid-col-92 {
+ min-width: 920px;
+ max-width: 920px;
+}
+
+.grid-col-93 {
+ min-width: 930px;
+ max-width: 930px;
+}
+
+.grid-col-94 {
+ min-width: 940px;
+ max-width: 940px;
+}
+
+.grid-col-95 {
+ min-width: 950px;
+ max-width: 950px;
+}
+
+.grid-col-96 {
+ min-width: 960px;
+ max-width: 960px;
+}
+
+.text-center {
+ text-align: center;
+}
+
+.flex {
+ display: -webkit-flex;
+ display: flex;
+ -webkit-flex-direction: row;
+ flex-direction: row;
+ -webkit-flex-wrap: wrap;
+ flex-wrap: wrap;
+}
+
+.flex-column {
+ -webkit-flex-direction: column;
+ -ms-flex-direction: column;
+ flex-direction: column;
+}
+
+.justify-content-start {
+ -webkit-align-items: flex-start;
+ align-items: flex-start;
+}
+
+.justify-content-end {
+ -webkit-justify-content: flex-end;
+ justify-content: flex-end;
+}
+
+.algin-item-start {
+ -webkit-align-items: flex-start;
+ align-items: flex-start;
+}
+
+.algin-item-end {
+ -webkit-align-items: flex-end;
+ align-items: flex-end;
+}
+
+.align-item-center {
+ -webkit-align-items: center;
+ -ms-flex-align: center;
+ align-items: center;
+}
+
+.justify-content-spacebetween {
+ -webkit-justify-content: space-between;
+ justify-content: space-between;
+}
+
+.justify-content-spacearound {
+ -webkit-justify-content: space-around;
+ -ms-flex-pack: distribute;
+ justify-content: space-around;
+ -webkit-align-content: space-around;
+ -ms-flex-line-pack: distribute;
+ align-content: space-around;
+}
+
+.justify-content-center {
+ -webkit-justify-content: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+}
+
+.width-100 {
+ min-width: 100vw;
+ max-width: 100vw;
+}
+
+.height-100 {
+ min-height: 100vh;
+}
+
+.width-50 {
+ min-width: 50%;
+}
+
+.width-30 {
+ min-width: 30%;
+ max-width: 30%;
+}
+
+.center {
+ transform: translate(50%, -0%);
+}
+
+.block {
+ display: block;
+}
\ No newline at end of file
diff --git a/application/assets/css/main.css b/application/assets/css/main.css
new file mode 100644
index 00000000..01b12ccf
--- /dev/null
+++ b/application/assets/css/main.css
@@ -0,0 +1,596 @@
+/*GENERAL*/
+
+:root {
+ --color-one: black;
+ --color-two: yellow;
+ --color-three: silver;
+ --color-four: rgb(190, 185, 185);
+ --color-five: rgb(38, 38, 38);
+ --color-seven: gainsboro;
+}
+
+@font-face {
+ font-family: "Lato-Regular";
+ src: url("../fonts/Lato-Regular.ttf");
+}
+
+*,
+*:before,
+*:after {
+ border: 0px;
+ padding: 0px;
+ margin: 0px;
+ box-sizing: border-box;
+
+ /* Careful, this breaks the word wherever it is without a hyphen */
+ overflow-wrap: break-word;
+ word-wrap: break-word;
+
+ /* Adds a hyphen where the word breaks */
+ -webkit-hyphens: auto;
+ -ms-hyphens: auto;
+ -moz-hyphens: auto;
+ hyphens: auto;
+}
+
+:focus {
+ outline: none;
+ background: var(--color-four);
+}
+
+::-moz-focus-inner {
+ border: 0;
+}
+
+.debug {
+ outline: 1px solid red;
+}
+html,
+body {
+ font-family: "Lato-Regular";
+ font-weight: 100;
+ position: relative;
+ margin: 0px;
+ padding: 0px;
+ font-size: 1rem;
+ line-height: 1.4rem;
+ max-height: 100%;
+ max-width: 100%;
+ height: 100%;
+ width: 100%;
+ max-width: 100vw;
+ overflow: hidden;
+ background: white;
+}
+
+h1 {
+ font-size: 1rem;
+}
+
+h2 {
+ font-size: 1rem;
+}
+
+h3 {
+ font-size: 1rem;
+}
+
+img {
+ max-width: 90vw;
+ height: auto;
+ display: block;
+}
+
+img[src=""] {
+ display: none;
+}
+
+img[src=" "] {
+ display: none;
+}
+
+button {
+ font-size: 1rem;
+ background: silver;
+ padding: 5px;
+ width: 100vw;
+ margin: 0 0 5px 0;
+ color: black;
+}
+
+button:focus {
+ background: silver;
+ color: white;
+}
+
+textarea {
+ height: 30px;
+ width: 90%;
+ padding: 3px;
+ border: 1px solid silver;
+}
+
+input {
+ width: 90%;
+ height: 30px;
+ padding: 3px;
+ border: 1px solid silver;
+}
+
+label {
+ display: block;
+ width: 100%;
+}
+.input-parent {
+ padding: 5px;
+}
+div#intro {
+ position: fixed;
+ background: black;
+ z-index: 100000;
+ min-width: 100%;
+ height: 100%;
+ display: none;
+}
+
+div#intro img {
+ width: 100px;
+ height: auto;
+ position: absolute;
+ top: 100px;
+ left: 50%;
+ margin-left: -50px;
+ animation-name: intro;
+ animation-duration: 2s;
+ animation-delay: 1s;
+ animation-iteration-count: 1;
+ animation-fill-mode: forwards;
+}
+
+@keyframes intro {
+ from {
+ transform: translateY(0px);
+ }
+ to {
+ transform: translateY(-50px);
+ }
+}
+
+div#intro div#version {
+ position: absolute;
+ text-align: center;
+ color: white;
+ z-index: 2000;
+ font-size: 0.7rem;
+ display: none;
+}
+
+div#intro div#intro-message {
+ position: absolute;
+ top: 190px;
+ text-align: center;
+ color: white;
+ z-index: 2000;
+ font-size: 0.8rem;
+}
+
+div#intro div#loading-progress {
+ position: absolute;
+ top: 220px;
+
+ height: 10px;
+ width: 200px;
+}
+
+div#intro div#loading-progress div {
+ height: 10px;
+ width: 200px;
+}
+
+div#intro div#loading-progress div div {
+ width: 0%;
+ height: 10px;
+ background-color: rgb(180, 128, 128);
+}
+
+/*///////////////////////////
+///TOAST////////////////*/
+
+div#toast {
+ position: fixed;
+ height: auto;
+ overflow: none;
+ background: black;
+ color: white;
+ z-index: 10;
+ min-width: 100%;
+ padding: 5px;
+ top: 0px;
+
+ transition: all 0.5s ease-in-out;
+ transform-origin: left top;
+ transform: translate(0px, -100px);
+}
+
+/*///////////////////////////
+///VIEWS////////////////*/
+
+div#calendar {
+}
+
+div#calendar div.calendar-head {
+}
+
+div#calendar div.calendar-head div {
+ width: 13%;
+ font-size: 0.8rem;
+ text-align: center;
+}
+
+div#calendar div.calendar-body div {
+ width: 100%;
+}
+
+div#calendar div#calendar-body div {
+ min-width: 13%;
+ font-size: 0.8rem;
+ text-align: center;
+}
+
+div#calendar div#calendar-body div div.today {
+ background: pink;
+}
+
+div#calendar div#calendar-body div div.event {
+ background: green;
+}
+
+div#add-edit-event {
+ display: none;
+ position: absolute;
+ z-index: 2;
+ top: 0;
+ height: 92vh;
+ overflow: hidden;
+}
+
+div#list-view {
+ position: absolute;
+ z-index: 4;
+ top: 0;
+ display: none;
+ padding: 5px;
+ height: 92vh;
+ overflow: hidden;
+}
+
+div#list-view article {
+ margin: 0 0 10px 0;
+}
+
+div#options {
+ display: none;
+ background: white;
+ position: fixed;
+ top: 0;
+ z-index: 5;
+}
+
+div#options ul li {
+ background: var(--color-three);
+ color: white;
+ padding: 5px;
+ margin: 0 0 5px 0;
+}
+
+div#options ul li:focus {
+ background: rgb(92, 90, 90);
+}
+
+/*/////////////////
+///BOTTOM BAR////
+////////////////*/
+
+div#bottom-bar {
+ position: fixed;
+ z-index: 2000;
+ bottom: 10px;
+ left: 0px;
+ height: 18px;
+ z-index: 6;
+ background: black;
+ min-width: 100vw;
+}
+
+div#bottom-bar div#inner {
+ position: relative;
+}
+
+div#bottom-bar div {
+ background: black;
+ color: white;
+ padding: 2px;
+ font-size: 0.8rem;
+ text-align: center;
+}
+
+div#bottom-bar div#button-center {
+ background: black;
+ color: white;
+ padding: 2px;
+ width: 32%;
+ text-align: center;
+}
+
+div#bottom-bar div#button-left {
+ background: black;
+ color: white;
+ padding: 2px;
+ width: 32%;
+ text-align: left;
+ width: 32%;
+}
+
+div#bottom-bar div#button-right {
+ background: black;
+ color: white;
+ padding: 2px;
+ width: 32%;
+ text-align: right;
+}
+
+/*/////////////////
+///TOP-BAR///////*/
+
+div#top-bar {
+ position: fixed;
+ top: 0px;
+ left: 0px;
+ height: 18px;
+ z-index: 4;
+ background: black;
+ min-width: 100vw;
+ display: none;
+}
+
+div#top-bar img {
+ margin: 3px 0 0 5px;
+ max-height: 15px;
+ color: white;
+}
+
+div#top-bar div#inner {
+ position: relative;
+}
+
+div#top-bar div {
+ background: black;
+ color: white;
+ padding: 2px;
+}
+
+div#top-bar div#button-center {
+ background: black;
+ color: white;
+ padding: 2px;
+ width: 30%;
+ text-align: center;
+}
+
+div#top-bar div#button-left {
+ background: black;
+ color: white;
+ padding: 2px;
+ width: 20px;
+ text-align: left;
+ width: 30%;
+}
+
+div#top-bar div#button-right {
+ background: black;
+ color: white;
+ padding: 2px;
+ width: 30%;
+ text-align: right;
+}
+
+/*INTRO*/
+
+div#message-box {
+ display: block;
+ position: fixed;
+ top: 0px;
+ left: 0px;
+ min-width: 100%;
+ height: 100%;
+ background: black;
+ color: white;
+ z-index: 5;
+
+ display: none;
+}
+
+div#message-box div {
+ margin: 100px 0 0 0;
+ animation-name: colorAnimation;
+ animation-duration: 2s;
+ animation-timing-function: ease-out;
+ animation-fill-mode: forwards;
+ animation-iteration-count: infinite;
+ max-width: 70%;
+ text-align: center;
+}
+
+div#count {
+ font-size: 8px;
+ color: white !important;
+ position: fixed;
+ bottom: 15px;
+}
+
+/*AUDIO-PLAYER*/
+
+div#audio-player {
+ background: var(--color-four);
+ z-index: 3;
+ position: fixed;
+ display: none;
+}
+
+div#audio-player div#audio-title {
+ background: black;
+ color: white;
+ font-size: 1.2rem;
+ max-width: 60%;
+ padding: 5px;
+ position: fixed;
+ top: 0;
+ left: 0;
+}
+
+div#audio-player div#image {
+ background-size: cover;
+ min-height: 100vh;
+}
+
+div#audio-player div#background-pattern {
+ min-width: 100vw;
+}
+
+div#audio-player div#background-pattern div {
+ width: 45px;
+ height: 45px;
+ margin: 0px;
+}
+
+div#audio-player div#progress-bar {
+ height: 10px;
+ position: fixed;
+ bottom: 30px;
+ z-index: 5;
+}
+
+div#audio-player div#progress-bar div {
+ height: 5px;
+ background: var(--color-six);
+}
+
+/*
+ SETTINGS
+ */
+
+div#top {
+ position: fixed;
+ top: 0;
+}
+
+div#settings {
+ display: none;
+ height: 92vh;
+ width: 100%;
+ padding: 0px 0 50px 0;
+ overflow: hidden;
+ position: absolute;
+ top: 0px;
+ z-index: 3;
+ background: rgb(231, 231, 231);
+}
+
+div#settings div#text {
+ margin: 0 0 20px 0;
+}
+div#settings h2 {
+ padding: 0 10px 0 10px;
+}
+
+div#settings div.input-parent {
+ padding: 10px 10px 20px 10px;
+}
+
+div#settings div.input-parent:focus {
+ padding: 10px 10px 20px 10px;
+ background: rgb(179, 179, 179);
+}
+
+div#settings label {
+ min-width: 80%;
+ height: 30px;
+ margin: 5px 5px 0 0;
+}
+
+div#settings div#input-wrapper {
+ margin: 0 0 0px 0;
+}
+
+div#settings input {
+ width: 90%;
+ height: 30px;
+ font-size: 1rem;
+ border: 2px solid rgb(32, 32, 32);
+ margin: 10px 0 10px 0;
+ padding: 3px;
+ display: block;
+}
+
+div#settings input:focus {
+ outline: 1px solid rgb(36, 35, 35);
+ background: rgb(255, 240, 240);
+}
+
+#goodbye {
+ position: fixed;
+ z-index: 50000;
+ left: 0;
+ top: 0;
+ background: black;
+ color: white;
+ font-size: 18px;
+ padding: 70px 5px 5px 5px;
+ display: none;
+}
+
+#ciao {
+ padding: 5px;
+ text-align: center;
+ display: none;
+}
+
+#ciao ul {
+ margin: 20px 0 0px 0;
+}
+
+#ciao ul li {
+ margin: 0 0 0px 0;
+ font-size: 14px;
+ list-style: none;
+}
+
+#ciao ul li:first-child {
+ color: yellow;
+ margin: 0 0 5px 0;
+}
+
+#donation {
+ padding: 5px;
+ text-align: center;
+ display: none;
+}
+
+.overscrolling {
+ /* Start the shake animation and make the animation last for 0.5 seconds */
+ animation: jump 0.5s;
+
+ /* When the animation is finished, start again */
+
+ animation-iteration-count: 1;
+}
+
+@keyframes jump {
+ 0% {
+ transform: translateY(0);
+ }
+
+ 100% {
+ transform: translateY(-30px);
+ }
+}
diff --git a/application/assets/css/qr-reader.css b/application/assets/css/qr-reader.css
new file mode 100644
index 00000000..2e71c0da
--- /dev/null
+++ b/application/assets/css/qr-reader.css
@@ -0,0 +1,78 @@
+div#qr-screen {
+ top: 0;
+ left: 0;
+ position: fixed;
+ z-index: 200000;
+ display: block;
+ min-height: 100vh;
+ min-width: 100vw;
+ z-index: 2000000000000;
+ display: none;
+}
+
+#video {
+ bottom: 0;
+ height: auto;
+ min-height: 100%;
+ min-width: 100%;
+ position: fixed;
+ right: 0;
+ width: auto;
+}
+
+#startDecoding {
+ background: #0095dd;
+ border-radius: 40px;
+ color: #fff;
+ font-family: Arial, sans;
+ font-size: 20px;
+ left: 50%;
+ margin: -30px 0 0 -95px;
+ padding: 20px;
+ position: fixed;
+ text-align: center;
+ top: 50%;
+ width: 150px;
+}
+
+#corner-nw,
+#corner-no,
+#corner-so,
+#corner-sw {
+ border: #fff 6px solid;
+ height: 30px;
+ position: fixed;
+ width: 30px;
+}
+
+#corner-nw {
+ border-bottom: 0;
+ border-right: 0;
+ border-top-left-radius: 20px;
+ left: 20px;
+ top: 20px;
+}
+
+#corner-no {
+ border-bottom: 0;
+ border-left: 0;
+ border-top-right-radius: 20px;
+ right: 20px;
+ top: 20px;
+}
+
+#corner-so {
+ border-bottom-right-radius: 20px;
+ border-left: 0;
+ border-top: 0;
+ bottom: 20px;
+ right: 20px;
+}
+
+#corner-sw {
+ border-bottom-left-radius: 20px;
+ border-right: 0;
+ border-top: 0;
+ bottom: 20px;
+ left: 20px;
+}
\ No newline at end of file
diff --git a/application/assets/fonts/Lato-Regular.ttf b/application/assets/fonts/Lato-Regular.ttf
new file mode 100644
index 00000000..33eba8b1
Binary files /dev/null and b/application/assets/fonts/Lato-Regular.ttf differ
diff --git a/application/assets/fonts/icons/100.svg b/application/assets/fonts/icons/100.svg
new file mode 100644
index 00000000..b988bc3b
--- /dev/null
+++ b/application/assets/fonts/icons/100.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/accessibility.svg b/application/assets/fonts/icons/accessibility.svg
new file mode 100644
index 00000000..0749fbf5
--- /dev/null
+++ b/application/assets/fonts/icons/accessibility.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/add.svg b/application/assets/fonts/icons/add.svg
new file mode 100644
index 00000000..1855e215
--- /dev/null
+++ b/application/assets/fonts/icons/add.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/airdrop.svg b/application/assets/fonts/icons/airdrop.svg
new file mode 100644
index 00000000..717cc60f
--- /dev/null
+++ b/application/assets/fonts/icons/airdrop.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/airplay-audio.svg b/application/assets/fonts/icons/airplay-audio.svg
new file mode 100644
index 00000000..6ee63b1e
--- /dev/null
+++ b/application/assets/fonts/icons/airplay-audio.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/airplay-video.svg b/application/assets/fonts/icons/airplay-video.svg
new file mode 100644
index 00000000..581515b2
--- /dev/null
+++ b/application/assets/fonts/icons/airplay-video.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/airpods.svg b/application/assets/fonts/icons/airpods.svg
new file mode 100644
index 00000000..0748780a
--- /dev/null
+++ b/application/assets/fonts/icons/airpods.svg
@@ -0,0 +1,23 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/alarm.svg b/application/assets/fonts/icons/alarm.svg
new file mode 100644
index 00000000..a9cc714e
--- /dev/null
+++ b/application/assets/fonts/icons/alarm.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/albums.svg b/application/assets/fonts/icons/albums.svg
new file mode 100644
index 00000000..860630db
--- /dev/null
+++ b/application/assets/fonts/icons/albums.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/alert.svg b/application/assets/fonts/icons/alert.svg
new file mode 100644
index 00000000..b57bcac1
--- /dev/null
+++ b/application/assets/fonts/icons/alert.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/align-bottom.svg b/application/assets/fonts/icons/align-bottom.svg
new file mode 100644
index 00000000..9c747119
--- /dev/null
+++ b/application/assets/fonts/icons/align-bottom.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/align-distribute-bottom.svg b/application/assets/fonts/icons/align-distribute-bottom.svg
new file mode 100644
index 00000000..b506a251
--- /dev/null
+++ b/application/assets/fonts/icons/align-distribute-bottom.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/align-distribute-h.svg b/application/assets/fonts/icons/align-distribute-h.svg
new file mode 100644
index 00000000..f41fdbbd
--- /dev/null
+++ b/application/assets/fonts/icons/align-distribute-h.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/align-distribute-left.svg b/application/assets/fonts/icons/align-distribute-left.svg
new file mode 100644
index 00000000..3382bda4
--- /dev/null
+++ b/application/assets/fonts/icons/align-distribute-left.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/align-distribute-right.svg b/application/assets/fonts/icons/align-distribute-right.svg
new file mode 100644
index 00000000..86a4f101
--- /dev/null
+++ b/application/assets/fonts/icons/align-distribute-right.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/align-distribute-top.svg b/application/assets/fonts/icons/align-distribute-top.svg
new file mode 100644
index 00000000..6f0a6afa
--- /dev/null
+++ b/application/assets/fonts/icons/align-distribute-top.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/align-distribute-v.svg b/application/assets/fonts/icons/align-distribute-v.svg
new file mode 100644
index 00000000..6f225ca3
--- /dev/null
+++ b/application/assets/fonts/icons/align-distribute-v.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/align-horizontal.svg b/application/assets/fonts/icons/align-horizontal.svg
new file mode 100644
index 00000000..a953e9fa
--- /dev/null
+++ b/application/assets/fonts/icons/align-horizontal.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/align-left.svg b/application/assets/fonts/icons/align-left.svg
new file mode 100644
index 00000000..527f5ed9
--- /dev/null
+++ b/application/assets/fonts/icons/align-left.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/align-right.svg b/application/assets/fonts/icons/align-right.svg
new file mode 100644
index 00000000..cff52150
--- /dev/null
+++ b/application/assets/fonts/icons/align-right.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/align-top.svg b/application/assets/fonts/icons/align-top.svg
new file mode 100644
index 00000000..63888e9e
--- /dev/null
+++ b/application/assets/fonts/icons/align-top.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/align-vertical.svg b/application/assets/fonts/icons/align-vertical.svg
new file mode 100644
index 00000000..44e5679c
--- /dev/null
+++ b/application/assets/fonts/icons/align-vertical.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/anchor.svg b/application/assets/fonts/icons/anchor.svg
new file mode 100644
index 00000000..bf1b5356
--- /dev/null
+++ b/application/assets/fonts/icons/anchor.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/archive.svg b/application/assets/fonts/icons/archive.svg
new file mode 100644
index 00000000..34c5678d
--- /dev/null
+++ b/application/assets/fonts/icons/archive.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/arrow-down-left.svg b/application/assets/fonts/icons/arrow-down-left.svg
new file mode 100644
index 00000000..06346191
--- /dev/null
+++ b/application/assets/fonts/icons/arrow-down-left.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/arrow-down-right.svg b/application/assets/fonts/icons/arrow-down-right.svg
new file mode 100644
index 00000000..a4271179
--- /dev/null
+++ b/application/assets/fonts/icons/arrow-down-right.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/arrow-down.svg b/application/assets/fonts/icons/arrow-down.svg
new file mode 100644
index 00000000..88fd8935
--- /dev/null
+++ b/application/assets/fonts/icons/arrow-down.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/arrow-left.svg b/application/assets/fonts/icons/arrow-left.svg
new file mode 100644
index 00000000..ef479bd9
--- /dev/null
+++ b/application/assets/fonts/icons/arrow-left.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/arrow-right.svg b/application/assets/fonts/icons/arrow-right.svg
new file mode 100644
index 00000000..285d1a3d
--- /dev/null
+++ b/application/assets/fonts/icons/arrow-right.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/arrow-up-left.svg b/application/assets/fonts/icons/arrow-up-left.svg
new file mode 100644
index 00000000..c4f94be1
--- /dev/null
+++ b/application/assets/fonts/icons/arrow-up-left.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/arrow-up-right.svg b/application/assets/fonts/icons/arrow-up-right.svg
new file mode 100644
index 00000000..467a0d4e
--- /dev/null
+++ b/application/assets/fonts/icons/arrow-up-right.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/arrow-up.svg b/application/assets/fonts/icons/arrow-up.svg
new file mode 100644
index 00000000..8585e27f
--- /dev/null
+++ b/application/assets/fonts/icons/arrow-up.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/atom.svg b/application/assets/fonts/icons/atom.svg
new file mode 100644
index 00000000..1784c276
--- /dev/null
+++ b/application/assets/fonts/icons/atom.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/avocado.svg b/application/assets/fonts/icons/avocado.svg
new file mode 100644
index 00000000..dd18e8fd
--- /dev/null
+++ b/application/assets/fonts/icons/avocado.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/back-alt.svg b/application/assets/fonts/icons/back-alt.svg
new file mode 100644
index 00000000..0f6899c0
--- /dev/null
+++ b/application/assets/fonts/icons/back-alt.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/backpack.svg b/application/assets/fonts/icons/backpack.svg
new file mode 100644
index 00000000..7730dbe2
--- /dev/null
+++ b/application/assets/fonts/icons/backpack.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/badge-star.svg b/application/assets/fonts/icons/badge-star.svg
new file mode 100644
index 00000000..763d0861
--- /dev/null
+++ b/application/assets/fonts/icons/badge-star.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/badge-tick.svg b/application/assets/fonts/icons/badge-tick.svg
new file mode 100644
index 00000000..0268ead6
--- /dev/null
+++ b/application/assets/fonts/icons/badge-tick.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/bag.svg b/application/assets/fonts/icons/bag.svg
new file mode 100644
index 00000000..0b2ff02f
--- /dev/null
+++ b/application/assets/fonts/icons/bag.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/balloon.svg b/application/assets/fonts/icons/balloon.svg
new file mode 100644
index 00000000..a4ed3c86
--- /dev/null
+++ b/application/assets/fonts/icons/balloon.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/barcode.svg b/application/assets/fonts/icons/barcode.svg
new file mode 100644
index 00000000..45945461
--- /dev/null
+++ b/application/assets/fonts/icons/barcode.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/basket.svg b/application/assets/fonts/icons/basket.svg
new file mode 100644
index 00000000..bdb12100
--- /dev/null
+++ b/application/assets/fonts/icons/basket.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/battery-000.svg b/application/assets/fonts/icons/battery-000.svg
new file mode 100644
index 00000000..ec920ca4
--- /dev/null
+++ b/application/assets/fonts/icons/battery-000.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/battery-025.svg b/application/assets/fonts/icons/battery-025.svg
new file mode 100644
index 00000000..f3cc249d
--- /dev/null
+++ b/application/assets/fonts/icons/battery-025.svg
@@ -0,0 +1,23 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/battery-050.svg b/application/assets/fonts/icons/battery-050.svg
new file mode 100644
index 00000000..f505ce00
--- /dev/null
+++ b/application/assets/fonts/icons/battery-050.svg
@@ -0,0 +1,23 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/battery-075.svg b/application/assets/fonts/icons/battery-075.svg
new file mode 100644
index 00000000..d148b330
--- /dev/null
+++ b/application/assets/fonts/icons/battery-075.svg
@@ -0,0 +1,23 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/battery-100.svg b/application/assets/fonts/icons/battery-100.svg
new file mode 100644
index 00000000..9f645d37
--- /dev/null
+++ b/application/assets/fonts/icons/battery-100.svg
@@ -0,0 +1,23 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/bauble.svg b/application/assets/fonts/icons/bauble.svg
new file mode 100644
index 00000000..b34b7afc
--- /dev/null
+++ b/application/assets/fonts/icons/bauble.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/bell-1.svg b/application/assets/fonts/icons/bell-1.svg
new file mode 100644
index 00000000..1b741a29
--- /dev/null
+++ b/application/assets/fonts/icons/bell-1.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/bell.svg b/application/assets/fonts/icons/bell.svg
new file mode 100644
index 00000000..2f559e65
--- /dev/null
+++ b/application/assets/fonts/icons/bell.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/black-hole.svg b/application/assets/fonts/icons/black-hole.svg
new file mode 100644
index 00000000..9c3efcdd
--- /dev/null
+++ b/application/assets/fonts/icons/black-hole.svg
@@ -0,0 +1,25 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/bluetooth-connected.svg b/application/assets/fonts/icons/bluetooth-connected.svg
new file mode 100644
index 00000000..d18ea1cc
--- /dev/null
+++ b/application/assets/fonts/icons/bluetooth-connected.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/bluetooth-off.svg b/application/assets/fonts/icons/bluetooth-off.svg
new file mode 100644
index 00000000..1002d97b
--- /dev/null
+++ b/application/assets/fonts/icons/bluetooth-off.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/bluetooth.svg b/application/assets/fonts/icons/bluetooth.svg
new file mode 100644
index 00000000..058e7b5c
--- /dev/null
+++ b/application/assets/fonts/icons/bluetooth.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/boat.svg b/application/assets/fonts/icons/boat.svg
new file mode 100644
index 00000000..b0156843
--- /dev/null
+++ b/application/assets/fonts/icons/boat.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/book.svg b/application/assets/fonts/icons/book.svg
new file mode 100644
index 00000000..f06bd8ee
--- /dev/null
+++ b/application/assets/fonts/icons/book.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/bookmark.svg b/application/assets/fonts/icons/bookmark.svg
new file mode 100644
index 00000000..00f80ca7
--- /dev/null
+++ b/application/assets/fonts/icons/bookmark.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/box-open.svg b/application/assets/fonts/icons/box-open.svg
new file mode 100644
index 00000000..bddcd831
--- /dev/null
+++ b/application/assets/fonts/icons/box-open.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/box.svg b/application/assets/fonts/icons/box.svg
new file mode 100644
index 00000000..6fb764fc
--- /dev/null
+++ b/application/assets/fonts/icons/box.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/briefcase.svg b/application/assets/fonts/icons/briefcase.svg
new file mode 100644
index 00000000..4365dfef
--- /dev/null
+++ b/application/assets/fonts/icons/briefcase.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/brightness-full.svg b/application/assets/fonts/icons/brightness-full.svg
new file mode 100644
index 00000000..35a0f5f4
--- /dev/null
+++ b/application/assets/fonts/icons/brightness-full.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/brightness-low.svg b/application/assets/fonts/icons/brightness-low.svg
new file mode 100644
index 00000000..fc3d62d5
--- /dev/null
+++ b/application/assets/fonts/icons/brightness-low.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/brightness-mid.svg b/application/assets/fonts/icons/brightness-mid.svg
new file mode 100644
index 00000000..8e293f9a
--- /dev/null
+++ b/application/assets/fonts/icons/brightness-mid.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/brush.svg b/application/assets/fonts/icons/brush.svg
new file mode 100644
index 00000000..60c5953e
--- /dev/null
+++ b/application/assets/fonts/icons/brush.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/bulb.svg b/application/assets/fonts/icons/bulb.svg
new file mode 100644
index 00000000..a90b5f3a
--- /dev/null
+++ b/application/assets/fonts/icons/bulb.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/burger.svg b/application/assets/fonts/icons/burger.svg
new file mode 100644
index 00000000..75392e33
--- /dev/null
+++ b/application/assets/fonts/icons/burger.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/cake.svg b/application/assets/fonts/icons/cake.svg
new file mode 100644
index 00000000..700f8ff8
--- /dev/null
+++ b/application/assets/fonts/icons/cake.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/calculator-alt.svg b/application/assets/fonts/icons/calculator-alt.svg
new file mode 100644
index 00000000..168bee76
--- /dev/null
+++ b/application/assets/fonts/icons/calculator-alt.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/calculator.svg b/application/assets/fonts/icons/calculator.svg
new file mode 100644
index 00000000..0ccb040e
--- /dev/null
+++ b/application/assets/fonts/icons/calculator.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/calendar.svg b/application/assets/fonts/icons/calendar.svg
new file mode 100644
index 00000000..15232872
--- /dev/null
+++ b/application/assets/fonts/icons/calendar.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/camera-flip.svg b/application/assets/fonts/icons/camera-flip.svg
new file mode 100644
index 00000000..492f1c7f
--- /dev/null
+++ b/application/assets/fonts/icons/camera-flip.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/camera.svg b/application/assets/fonts/icons/camera.svg
new file mode 100644
index 00000000..b1fb9ae8
--- /dev/null
+++ b/application/assets/fonts/icons/camera.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/candle.svg b/application/assets/fonts/icons/candle.svg
new file mode 100644
index 00000000..8e03c42c
--- /dev/null
+++ b/application/assets/fonts/icons/candle.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/candy-cane.svg b/application/assets/fonts/icons/candy-cane.svg
new file mode 100644
index 00000000..b6eef3da
--- /dev/null
+++ b/application/assets/fonts/icons/candy-cane.svg
@@ -0,0 +1,22 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/candy-corn.svg b/application/assets/fonts/icons/candy-corn.svg
new file mode 100644
index 00000000..70509210
--- /dev/null
+++ b/application/assets/fonts/icons/candy-corn.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/candy.svg b/application/assets/fonts/icons/candy.svg
new file mode 100644
index 00000000..5167ad2e
--- /dev/null
+++ b/application/assets/fonts/icons/candy.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/caps.svg b/application/assets/fonts/icons/caps.svg
new file mode 100644
index 00000000..1cc2d8ad
--- /dev/null
+++ b/application/assets/fonts/icons/caps.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/car.svg b/application/assets/fonts/icons/car.svg
new file mode 100644
index 00000000..55eb197e
--- /dev/null
+++ b/application/assets/fonts/icons/car.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/card.svg b/application/assets/fonts/icons/card.svg
new file mode 100644
index 00000000..9d1b06aa
--- /dev/null
+++ b/application/assets/fonts/icons/card.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/cart.svg b/application/assets/fonts/icons/cart.svg
new file mode 100644
index 00000000..30720529
--- /dev/null
+++ b/application/assets/fonts/icons/cart.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/cast.svg b/application/assets/fonts/icons/cast.svg
new file mode 100644
index 00000000..dfd1a776
--- /dev/null
+++ b/application/assets/fonts/icons/cast.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/castle.svg b/application/assets/fonts/icons/castle.svg
new file mode 100644
index 00000000..301d8a07
--- /dev/null
+++ b/application/assets/fonts/icons/castle.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/cd.svg b/application/assets/fonts/icons/cd.svg
new file mode 100644
index 00000000..77a7aeb4
--- /dev/null
+++ b/application/assets/fonts/icons/cd.svg
@@ -0,0 +1,23 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/chart-pie.svg b/application/assets/fonts/icons/chart-pie.svg
new file mode 100644
index 00000000..45d49ff8
--- /dev/null
+++ b/application/assets/fonts/icons/chart-pie.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/chart.svg b/application/assets/fonts/icons/chart.svg
new file mode 100644
index 00000000..d4528574
--- /dev/null
+++ b/application/assets/fonts/icons/chart.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/chat-typing.svg b/application/assets/fonts/icons/chat-typing.svg
new file mode 100644
index 00000000..15cfa00d
--- /dev/null
+++ b/application/assets/fonts/icons/chat-typing.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/chat.svg b/application/assets/fonts/icons/chat.svg
new file mode 100644
index 00000000..d7dad778
--- /dev/null
+++ b/application/assets/fonts/icons/chat.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/chats.svg b/application/assets/fonts/icons/chats.svg
new file mode 100644
index 00000000..53d78a05
--- /dev/null
+++ b/application/assets/fonts/icons/chats.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/checkbox-off.svg b/application/assets/fonts/icons/checkbox-off.svg
new file mode 100644
index 00000000..b6ae9ab3
--- /dev/null
+++ b/application/assets/fonts/icons/checkbox-off.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/checkbox-on-alt.svg b/application/assets/fonts/icons/checkbox-on-alt.svg
new file mode 100644
index 00000000..77358ce9
--- /dev/null
+++ b/application/assets/fonts/icons/checkbox-on-alt.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/checkbox-on.svg b/application/assets/fonts/icons/checkbox-on.svg
new file mode 100644
index 00000000..3a186475
--- /dev/null
+++ b/application/assets/fonts/icons/checkbox-on.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/christmas-pudding.svg b/application/assets/fonts/icons/christmas-pudding.svg
new file mode 100644
index 00000000..3c997972
--- /dev/null
+++ b/application/assets/fonts/icons/christmas-pudding.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/christmas-tree.svg b/application/assets/fonts/icons/christmas-tree.svg
new file mode 100644
index 00000000..bc8a818e
--- /dev/null
+++ b/application/assets/fonts/icons/christmas-tree.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/circle-cross.svg b/application/assets/fonts/icons/circle-cross.svg
new file mode 100644
index 00000000..ade5f1e4
--- /dev/null
+++ b/application/assets/fonts/icons/circle-cross.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/circle-tick.svg b/application/assets/fonts/icons/circle-tick.svg
new file mode 100644
index 00000000..cb681c9c
--- /dev/null
+++ b/application/assets/fonts/icons/circle-tick.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/city.svg b/application/assets/fonts/icons/city.svg
new file mode 100644
index 00000000..a35ef930
--- /dev/null
+++ b/application/assets/fonts/icons/city.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/classic-mac.svg b/application/assets/fonts/icons/classic-mac.svg
new file mode 100644
index 00000000..5ec8034f
--- /dev/null
+++ b/application/assets/fonts/icons/classic-mac.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/clock.svg b/application/assets/fonts/icons/clock.svg
new file mode 100644
index 00000000..33175496
--- /dev/null
+++ b/application/assets/fonts/icons/clock.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/cloud-download.svg b/application/assets/fonts/icons/cloud-download.svg
new file mode 100644
index 00000000..e71b686b
--- /dev/null
+++ b/application/assets/fonts/icons/cloud-download.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/cloud-error-alt.svg b/application/assets/fonts/icons/cloud-error-alt.svg
new file mode 100644
index 00000000..9d6714a2
--- /dev/null
+++ b/application/assets/fonts/icons/cloud-error-alt.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/cloud-error.svg b/application/assets/fonts/icons/cloud-error.svg
new file mode 100644
index 00000000..36b4952d
--- /dev/null
+++ b/application/assets/fonts/icons/cloud-error.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/cloud-upload.svg b/application/assets/fonts/icons/cloud-upload.svg
new file mode 100644
index 00000000..025a4f63
--- /dev/null
+++ b/application/assets/fonts/icons/cloud-upload.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/cloud.svg b/application/assets/fonts/icons/cloud.svg
new file mode 100644
index 00000000..083ddb4b
--- /dev/null
+++ b/application/assets/fonts/icons/cloud.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/coffee.svg b/application/assets/fonts/icons/coffee.svg
new file mode 100644
index 00000000..721754b8
--- /dev/null
+++ b/application/assets/fonts/icons/coffee.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/coffin.svg b/application/assets/fonts/icons/coffin.svg
new file mode 100644
index 00000000..e8649e55
--- /dev/null
+++ b/application/assets/fonts/icons/coffin.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/coin-dollar.svg b/application/assets/fonts/icons/coin-dollar.svg
new file mode 100644
index 00000000..b003507d
--- /dev/null
+++ b/application/assets/fonts/icons/coin-dollar.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/coin-pound.svg b/application/assets/fonts/icons/coin-pound.svg
new file mode 100644
index 00000000..2acff461
--- /dev/null
+++ b/application/assets/fonts/icons/coin-pound.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/comet.svg b/application/assets/fonts/icons/comet.svg
new file mode 100644
index 00000000..ba423e6c
--- /dev/null
+++ b/application/assets/fonts/icons/comet.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/command.svg b/application/assets/fonts/icons/command.svg
new file mode 100644
index 00000000..bc6acdb6
--- /dev/null
+++ b/application/assets/fonts/icons/command.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/compass.svg b/application/assets/fonts/icons/compass.svg
new file mode 100644
index 00000000..d6397435
--- /dev/null
+++ b/application/assets/fonts/icons/compass.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/controller.svg b/application/assets/fonts/icons/controller.svg
new file mode 100644
index 00000000..247eebcc
--- /dev/null
+++ b/application/assets/fonts/icons/controller.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/copy.svg b/application/assets/fonts/icons/copy.svg
new file mode 100644
index 00000000..e29f8fe1
--- /dev/null
+++ b/application/assets/fonts/icons/copy.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/crop.svg b/application/assets/fonts/icons/crop.svg
new file mode 100644
index 00000000..8f28303a
--- /dev/null
+++ b/application/assets/fonts/icons/crop.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/cross.svg b/application/assets/fonts/icons/cross.svg
new file mode 100644
index 00000000..14b7ab2a
--- /dev/null
+++ b/application/assets/fonts/icons/cross.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/crown.svg b/application/assets/fonts/icons/crown.svg
new file mode 100644
index 00000000..52e8f464
--- /dev/null
+++ b/application/assets/fonts/icons/crown.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/cutlery.svg b/application/assets/fonts/icons/cutlery.svg
new file mode 100644
index 00000000..13c55179
--- /dev/null
+++ b/application/assets/fonts/icons/cutlery.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/delete.svg b/application/assets/fonts/icons/delete.svg
new file mode 100644
index 00000000..fa8ac98a
--- /dev/null
+++ b/application/assets/fonts/icons/delete.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/desktop.svg b/application/assets/fonts/icons/desktop.svg
new file mode 100644
index 00000000..200efd13
--- /dev/null
+++ b/application/assets/fonts/icons/desktop.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/dial.svg b/application/assets/fonts/icons/dial.svg
new file mode 100644
index 00000000..beaab3d9
--- /dev/null
+++ b/application/assets/fonts/icons/dial.svg
@@ -0,0 +1,21 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/diamond.svg b/application/assets/fonts/icons/diamond.svg
new file mode 100644
index 00000000..83cee58b
--- /dev/null
+++ b/application/assets/fonts/icons/diamond.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/divide.svg b/application/assets/fonts/icons/divide.svg
new file mode 100644
index 00000000..c4a63cf4
--- /dev/null
+++ b/application/assets/fonts/icons/divide.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/document.svg b/application/assets/fonts/icons/document.svg
new file mode 100644
index 00000000..b785d818
--- /dev/null
+++ b/application/assets/fonts/icons/document.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/donut.svg b/application/assets/fonts/icons/donut.svg
new file mode 100644
index 00000000..66e0ce98
--- /dev/null
+++ b/application/assets/fonts/icons/donut.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/download.svg b/application/assets/fonts/icons/download.svg
new file mode 100644
index 00000000..fa745561
--- /dev/null
+++ b/application/assets/fonts/icons/download.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/dribbble.svg b/application/assets/fonts/icons/dribbble.svg
new file mode 100644
index 00000000..48634ac0
--- /dev/null
+++ b/application/assets/fonts/icons/dribbble.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/edit.svg b/application/assets/fonts/icons/edit.svg
new file mode 100644
index 00000000..7c84d877
--- /dev/null
+++ b/application/assets/fonts/icons/edit.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/egg-timer.svg b/application/assets/fonts/icons/egg-timer.svg
new file mode 100644
index 00000000..81ab5474
--- /dev/null
+++ b/application/assets/fonts/icons/egg-timer.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/emoji-angry.svg b/application/assets/fonts/icons/emoji-angry.svg
new file mode 100644
index 00000000..0774b39a
--- /dev/null
+++ b/application/assets/fonts/icons/emoji-angry.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/emoji-happy.svg b/application/assets/fonts/icons/emoji-happy.svg
new file mode 100644
index 00000000..e1feba24
--- /dev/null
+++ b/application/assets/fonts/icons/emoji-happy.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/emoji-sad.svg b/application/assets/fonts/icons/emoji-sad.svg
new file mode 100644
index 00000000..2ae1dc3f
--- /dev/null
+++ b/application/assets/fonts/icons/emoji-sad.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/emoji-shocked.svg b/application/assets/fonts/icons/emoji-shocked.svg
new file mode 100644
index 00000000..3c6d69b0
--- /dev/null
+++ b/application/assets/fonts/icons/emoji-shocked.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/emoji.svg b/application/assets/fonts/icons/emoji.svg
new file mode 100644
index 00000000..ce7f68e4
--- /dev/null
+++ b/application/assets/fonts/icons/emoji.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/eraser.svg b/application/assets/fonts/icons/eraser.svg
new file mode 100644
index 00000000..d2b6de68
--- /dev/null
+++ b/application/assets/fonts/icons/eraser.svg
@@ -0,0 +1,25 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/eye-closed.svg b/application/assets/fonts/icons/eye-closed.svg
new file mode 100644
index 00000000..9c1890d3
--- /dev/null
+++ b/application/assets/fonts/icons/eye-closed.svg
@@ -0,0 +1,21 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/eye-dropper.svg b/application/assets/fonts/icons/eye-dropper.svg
new file mode 100644
index 00000000..c22e644c
--- /dev/null
+++ b/application/assets/fonts/icons/eye-dropper.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/eye.svg b/application/assets/fonts/icons/eye.svg
new file mode 100644
index 00000000..44f196f5
--- /dev/null
+++ b/application/assets/fonts/icons/eye.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/facebook.svg b/application/assets/fonts/icons/facebook.svg
new file mode 100644
index 00000000..772796c2
--- /dev/null
+++ b/application/assets/fonts/icons/facebook.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/factory.svg b/application/assets/fonts/icons/factory.svg
new file mode 100644
index 00000000..c977971d
--- /dev/null
+++ b/application/assets/fonts/icons/factory.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/fairy-light.svg b/application/assets/fonts/icons/fairy-light.svg
new file mode 100644
index 00000000..0e3e5551
--- /dev/null
+++ b/application/assets/fonts/icons/fairy-light.svg
@@ -0,0 +1,24 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/filter-alt.svg b/application/assets/fonts/icons/filter-alt.svg
new file mode 100644
index 00000000..5549eeb7
--- /dev/null
+++ b/application/assets/fonts/icons/filter-alt.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/filter-ios.svg b/application/assets/fonts/icons/filter-ios.svg
new file mode 100644
index 00000000..fbacf805
--- /dev/null
+++ b/application/assets/fonts/icons/filter-ios.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/filter.svg b/application/assets/fonts/icons/filter.svg
new file mode 100644
index 00000000..92e9d706
--- /dev/null
+++ b/application/assets/fonts/icons/filter.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/filters.svg b/application/assets/fonts/icons/filters.svg
new file mode 100644
index 00000000..277a5780
--- /dev/null
+++ b/application/assets/fonts/icons/filters.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/finder.svg b/application/assets/fonts/icons/finder.svg
new file mode 100644
index 00000000..7a2e1e1e
--- /dev/null
+++ b/application/assets/fonts/icons/finder.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/fingerprint.svg b/application/assets/fonts/icons/fingerprint.svg
new file mode 100644
index 00000000..806d1842
--- /dev/null
+++ b/application/assets/fonts/icons/fingerprint.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/flag-uk.svg b/application/assets/fonts/icons/flag-uk.svg
new file mode 100644
index 00000000..51c15ed5
--- /dev/null
+++ b/application/assets/fonts/icons/flag-uk.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/flag.svg b/application/assets/fonts/icons/flag.svg
new file mode 100644
index 00000000..5762aa63
--- /dev/null
+++ b/application/assets/fonts/icons/flag.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/flame.svg b/application/assets/fonts/icons/flame.svg
new file mode 100644
index 00000000..54c7e8b1
--- /dev/null
+++ b/application/assets/fonts/icons/flame.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/flash-auto.svg b/application/assets/fonts/icons/flash-auto.svg
new file mode 100644
index 00000000..5d06bf32
--- /dev/null
+++ b/application/assets/fonts/icons/flash-auto.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/flash-off.svg b/application/assets/fonts/icons/flash-off.svg
new file mode 100644
index 00000000..51c24371
--- /dev/null
+++ b/application/assets/fonts/icons/flash-off.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/flash-on.svg b/application/assets/fonts/icons/flash-on.svg
new file mode 100644
index 00000000..882fa4be
--- /dev/null
+++ b/application/assets/fonts/icons/flash-on.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/flashlight.svg b/application/assets/fonts/icons/flashlight.svg
new file mode 100644
index 00000000..01865a09
--- /dev/null
+++ b/application/assets/fonts/icons/flashlight.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/flower 2.svg b/application/assets/fonts/icons/flower 2.svg
new file mode 100644
index 00000000..f59a3190
--- /dev/null
+++ b/application/assets/fonts/icons/flower 2.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/flower.svg b/application/assets/fonts/icons/flower.svg
new file mode 100644
index 00000000..a5863135
--- /dev/null
+++ b/application/assets/fonts/icons/flower.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/folder.svg b/application/assets/fonts/icons/folder.svg
new file mode 100644
index 00000000..11183b89
--- /dev/null
+++ b/application/assets/fonts/icons/folder.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/forward.svg b/application/assets/fonts/icons/forward.svg
new file mode 100644
index 00000000..a26ce78e
--- /dev/null
+++ b/application/assets/fonts/icons/forward.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/fullscreen-exit.svg b/application/assets/fonts/icons/fullscreen-exit.svg
new file mode 100644
index 00000000..f048df24
--- /dev/null
+++ b/application/assets/fonts/icons/fullscreen-exit.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/fullscreen.svg b/application/assets/fonts/icons/fullscreen.svg
new file mode 100644
index 00000000..ec82d480
--- /dev/null
+++ b/application/assets/fonts/icons/fullscreen.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/gas.svg b/application/assets/fonts/icons/gas.svg
new file mode 100644
index 00000000..f151805f
--- /dev/null
+++ b/application/assets/fonts/icons/gas.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/gears.svg b/application/assets/fonts/icons/gears.svg
new file mode 100644
index 00000000..8725810a
--- /dev/null
+++ b/application/assets/fonts/icons/gears.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/gender-female.svg b/application/assets/fonts/icons/gender-female.svg
new file mode 100644
index 00000000..edfc1a58
--- /dev/null
+++ b/application/assets/fonts/icons/gender-female.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/gender-male.svg b/application/assets/fonts/icons/gender-male.svg
new file mode 100644
index 00000000..4fe19e7d
--- /dev/null
+++ b/application/assets/fonts/icons/gender-male.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/gender-symbol-female.svg b/application/assets/fonts/icons/gender-symbol-female.svg
new file mode 100644
index 00000000..5b05091b
--- /dev/null
+++ b/application/assets/fonts/icons/gender-symbol-female.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/gender-symbol-male.svg b/application/assets/fonts/icons/gender-symbol-male.svg
new file mode 100644
index 00000000..2e51b645
--- /dev/null
+++ b/application/assets/fonts/icons/gender-symbol-male.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/gender-symbol-uni.svg b/application/assets/fonts/icons/gender-symbol-uni.svg
new file mode 100644
index 00000000..3af5473e
--- /dev/null
+++ b/application/assets/fonts/icons/gender-symbol-uni.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/gender-unisex.svg b/application/assets/fonts/icons/gender-unisex.svg
new file mode 100644
index 00000000..f84edae3
--- /dev/null
+++ b/application/assets/fonts/icons/gender-unisex.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/ghost.svg b/application/assets/fonts/icons/ghost.svg
new file mode 100644
index 00000000..cd2c5151
--- /dev/null
+++ b/application/assets/fonts/icons/ghost.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/gift.svg b/application/assets/fonts/icons/gift.svg
new file mode 100644
index 00000000..56c215dd
--- /dev/null
+++ b/application/assets/fonts/icons/gift.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/gingerbread-house.svg b/application/assets/fonts/icons/gingerbread-house.svg
new file mode 100644
index 00000000..bc7f4afa
--- /dev/null
+++ b/application/assets/fonts/icons/gingerbread-house.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/gingerbread-man.svg b/application/assets/fonts/icons/gingerbread-man.svg
new file mode 100644
index 00000000..0aac607a
--- /dev/null
+++ b/application/assets/fonts/icons/gingerbread-man.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/glass-beer.svg b/application/assets/fonts/icons/glass-beer.svg
new file mode 100644
index 00000000..6b4889b9
--- /dev/null
+++ b/application/assets/fonts/icons/glass-beer.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/glass-cocktail.svg b/application/assets/fonts/icons/glass-cocktail.svg
new file mode 100644
index 00000000..4bb849cc
--- /dev/null
+++ b/application/assets/fonts/icons/glass-cocktail.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/glass-high-ball.svg b/application/assets/fonts/icons/glass-high-ball.svg
new file mode 100644
index 00000000..f5b356f1
--- /dev/null
+++ b/application/assets/fonts/icons/glass-high-ball.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/glass-tumbler.svg b/application/assets/fonts/icons/glass-tumbler.svg
new file mode 100644
index 00000000..7feecc27
--- /dev/null
+++ b/application/assets/fonts/icons/glass-tumbler.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/glass-wine.svg b/application/assets/fonts/icons/glass-wine.svg
new file mode 100644
index 00000000..3a9ae364
--- /dev/null
+++ b/application/assets/fonts/icons/glass-wine.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/glasses.svg b/application/assets/fonts/icons/glasses.svg
new file mode 100644
index 00000000..cb6048f4
--- /dev/null
+++ b/application/assets/fonts/icons/glasses.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/globe-2.svg b/application/assets/fonts/icons/globe-2.svg
new file mode 100644
index 00000000..d2ae2610
--- /dev/null
+++ b/application/assets/fonts/icons/globe-2.svg
@@ -0,0 +1,22 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/globe.svg b/application/assets/fonts/icons/globe.svg
new file mode 100644
index 00000000..dc98f60a
--- /dev/null
+++ b/application/assets/fonts/icons/globe.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/graduation-cap.svg b/application/assets/fonts/icons/graduation-cap.svg
new file mode 100644
index 00000000..ec4dbeb7
--- /dev/null
+++ b/application/assets/fonts/icons/graduation-cap.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/graph.svg b/application/assets/fonts/icons/graph.svg
new file mode 100644
index 00000000..267fdb77
--- /dev/null
+++ b/application/assets/fonts/icons/graph.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/gravestone.svg b/application/assets/fonts/icons/gravestone.svg
new file mode 100644
index 00000000..2095b463
--- /dev/null
+++ b/application/assets/fonts/icons/gravestone.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/grid.svg b/application/assets/fonts/icons/grid.svg
new file mode 100644
index 00000000..352bdac7
--- /dev/null
+++ b/application/assets/fonts/icons/grid.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/hammer.svg b/application/assets/fonts/icons/hammer.svg
new file mode 100644
index 00000000..ff42837e
--- /dev/null
+++ b/application/assets/fonts/icons/hammer.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/hashtag-alt.svg b/application/assets/fonts/icons/hashtag-alt.svg
new file mode 100644
index 00000000..77a3a024
--- /dev/null
+++ b/application/assets/fonts/icons/hashtag-alt.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/hashtag.svg b/application/assets/fonts/icons/hashtag.svg
new file mode 100644
index 00000000..8aa53313
--- /dev/null
+++ b/application/assets/fonts/icons/hashtag.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/headphones.svg b/application/assets/fonts/icons/headphones.svg
new file mode 100644
index 00000000..ec15d0ef
--- /dev/null
+++ b/application/assets/fonts/icons/headphones.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/health.svg b/application/assets/fonts/icons/health.svg
new file mode 100644
index 00000000..e816d25c
--- /dev/null
+++ b/application/assets/fonts/icons/health.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/heart-filled.svg b/application/assets/fonts/icons/heart-filled.svg
new file mode 100644
index 00000000..62457e59
--- /dev/null
+++ b/application/assets/fonts/icons/heart-filled.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/heart-tick.svg b/application/assets/fonts/icons/heart-tick.svg
new file mode 100644
index 00000000..4b7d79d5
--- /dev/null
+++ b/application/assets/fonts/icons/heart-tick.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/heartbeat.svg b/application/assets/fonts/icons/heartbeat.svg
new file mode 100644
index 00000000..7e52251a
--- /dev/null
+++ b/application/assets/fonts/icons/heartbeat.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/help.svg b/application/assets/fonts/icons/help.svg
new file mode 100644
index 00000000..44745a1f
--- /dev/null
+++ b/application/assets/fonts/icons/help.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/holdall.svg b/application/assets/fonts/icons/holdall.svg
new file mode 100644
index 00000000..6deda322
--- /dev/null
+++ b/application/assets/fonts/icons/holdall.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/holly.svg b/application/assets/fonts/icons/holly.svg
new file mode 100644
index 00000000..2e48d299
--- /dev/null
+++ b/application/assets/fonts/icons/holly.svg
@@ -0,0 +1,22 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/home.svg b/application/assets/fonts/icons/home.svg
new file mode 100644
index 00000000..1997844d
--- /dev/null
+++ b/application/assets/fonts/icons/home.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/homekit.svg b/application/assets/fonts/icons/homekit.svg
new file mode 100644
index 00000000..0e1c81ee
--- /dev/null
+++ b/application/assets/fonts/icons/homekit.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/ice-pop.svg b/application/assets/fonts/icons/ice-pop.svg
new file mode 100644
index 00000000..7637ea57
--- /dev/null
+++ b/application/assets/fonts/icons/ice-pop.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/ice-skate.svg b/application/assets/fonts/icons/ice-skate.svg
new file mode 100644
index 00000000..79efc87f
--- /dev/null
+++ b/application/assets/fonts/icons/ice-skate.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/im-with-her.svg b/application/assets/fonts/icons/im-with-her.svg
new file mode 100644
index 00000000..4efc46fa
--- /dev/null
+++ b/application/assets/fonts/icons/im-with-her.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/inbox-full.svg b/application/assets/fonts/icons/inbox-full.svg
new file mode 100644
index 00000000..f9561fec
--- /dev/null
+++ b/application/assets/fonts/icons/inbox-full.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/inbox.svg b/application/assets/fonts/icons/inbox.svg
new file mode 100644
index 00000000..f1db689b
--- /dev/null
+++ b/application/assets/fonts/icons/inbox.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/infinity.svg b/application/assets/fonts/icons/infinity.svg
new file mode 100644
index 00000000..35b05aeb
--- /dev/null
+++ b/application/assets/fonts/icons/infinity.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/info.svg b/application/assets/fonts/icons/info.svg
new file mode 100644
index 00000000..27da3b4b
--- /dev/null
+++ b/application/assets/fonts/icons/info.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/inspect.svg b/application/assets/fonts/icons/inspect.svg
new file mode 100644
index 00000000..2264b679
--- /dev/null
+++ b/application/assets/fonts/icons/inspect.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/instagram.svg b/application/assets/fonts/icons/instagram.svg
new file mode 100644
index 00000000..5eacda93
--- /dev/null
+++ b/application/assets/fonts/icons/instagram.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/ipod.svg b/application/assets/fonts/icons/ipod.svg
new file mode 100644
index 00000000..05e1526f
--- /dev/null
+++ b/application/assets/fonts/icons/ipod.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/key-2.svg b/application/assets/fonts/icons/key-2.svg
new file mode 100644
index 00000000..3a35cdab
--- /dev/null
+++ b/application/assets/fonts/icons/key-2.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/key.svg b/application/assets/fonts/icons/key.svg
new file mode 100644
index 00000000..550d0d7c
--- /dev/null
+++ b/application/assets/fonts/icons/key.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/keypad.svg b/application/assets/fonts/icons/keypad.svg
new file mode 100644
index 00000000..e22bb848
--- /dev/null
+++ b/application/assets/fonts/icons/keypad.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/knob.svg b/application/assets/fonts/icons/knob.svg
new file mode 100644
index 00000000..c2fceb45
--- /dev/null
+++ b/application/assets/fonts/icons/knob.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/laptop.svg b/application/assets/fonts/icons/laptop.svg
new file mode 100644
index 00000000..fa46433d
--- /dev/null
+++ b/application/assets/fonts/icons/laptop.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/layers.svg b/application/assets/fonts/icons/layers.svg
new file mode 100644
index 00000000..987c8c5e
--- /dev/null
+++ b/application/assets/fonts/icons/layers.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/leaf.svg b/application/assets/fonts/icons/leaf.svg
new file mode 100644
index 00000000..c63c4c57
--- /dev/null
+++ b/application/assets/fonts/icons/leaf.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/library.svg b/application/assets/fonts/icons/library.svg
new file mode 100644
index 00000000..97d3f6d9
--- /dev/null
+++ b/application/assets/fonts/icons/library.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/life-ring.svg b/application/assets/fonts/icons/life-ring.svg
new file mode 100644
index 00000000..a83a214f
--- /dev/null
+++ b/application/assets/fonts/icons/life-ring.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/lighthouse.svg b/application/assets/fonts/icons/lighthouse.svg
new file mode 100644
index 00000000..c83756a9
--- /dev/null
+++ b/application/assets/fonts/icons/lighthouse.svg
@@ -0,0 +1,26 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/link-break.svg b/application/assets/fonts/icons/link-break.svg
new file mode 100644
index 00000000..e30b1f5f
--- /dev/null
+++ b/application/assets/fonts/icons/link-break.svg
@@ -0,0 +1,23 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/link.svg b/application/assets/fonts/icons/link.svg
new file mode 100644
index 00000000..72fb0cfe
--- /dev/null
+++ b/application/assets/fonts/icons/link.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/list.svg b/application/assets/fonts/icons/list.svg
new file mode 100644
index 00000000..50e7c576
--- /dev/null
+++ b/application/assets/fonts/icons/list.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/location.svg b/application/assets/fonts/icons/location.svg
new file mode 100644
index 00000000..8bd2d248
--- /dev/null
+++ b/application/assets/fonts/icons/location.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/lock-open.svg b/application/assets/fonts/icons/lock-open.svg
new file mode 100644
index 00000000..329f1bf3
--- /dev/null
+++ b/application/assets/fonts/icons/lock-open.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/lock-round-open.svg b/application/assets/fonts/icons/lock-round-open.svg
new file mode 100644
index 00000000..21515dc2
--- /dev/null
+++ b/application/assets/fonts/icons/lock-round-open.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/lock-round.svg b/application/assets/fonts/icons/lock-round.svg
new file mode 100644
index 00000000..0fea2506
--- /dev/null
+++ b/application/assets/fonts/icons/lock-round.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/lock.svg b/application/assets/fonts/icons/lock.svg
new file mode 100644
index 00000000..ca6e2dab
--- /dev/null
+++ b/application/assets/fonts/icons/lock.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/london-eye.svg b/application/assets/fonts/icons/london-eye.svg
new file mode 100644
index 00000000..2f976f5a
--- /dev/null
+++ b/application/assets/fonts/icons/london-eye.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/loo-roll.svg b/application/assets/fonts/icons/loo-roll.svg
new file mode 100644
index 00000000..42926029
--- /dev/null
+++ b/application/assets/fonts/icons/loo-roll.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/magic-hat.svg b/application/assets/fonts/icons/magic-hat.svg
new file mode 100644
index 00000000..9bae09e1
--- /dev/null
+++ b/application/assets/fonts/icons/magic-hat.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/magic-wand.svg b/application/assets/fonts/icons/magic-wand.svg
new file mode 100644
index 00000000..09a46bca
--- /dev/null
+++ b/application/assets/fonts/icons/magic-wand.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/mail-open.svg b/application/assets/fonts/icons/mail-open.svg
new file mode 100644
index 00000000..425eb965
--- /dev/null
+++ b/application/assets/fonts/icons/mail-open.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/mail.svg b/application/assets/fonts/icons/mail.svg
new file mode 100644
index 00000000..6294b00e
--- /dev/null
+++ b/application/assets/fonts/icons/mail.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/mallet.svg b/application/assets/fonts/icons/mallet.svg
new file mode 100644
index 00000000..7aa8664a
--- /dev/null
+++ b/application/assets/fonts/icons/mallet.svg
@@ -0,0 +1,21 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/map-pin.svg b/application/assets/fonts/icons/map-pin.svg
new file mode 100644
index 00000000..7e2561b3
--- /dev/null
+++ b/application/assets/fonts/icons/map-pin.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/map.svg b/application/assets/fonts/icons/map.svg
new file mode 100644
index 00000000..1fcaa6e1
--- /dev/null
+++ b/application/assets/fonts/icons/map.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/megaphone.svg b/application/assets/fonts/icons/megaphone.svg
new file mode 100644
index 00000000..b5c8ae2d
--- /dev/null
+++ b/application/assets/fonts/icons/megaphone.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/menu.svg b/application/assets/fonts/icons/menu.svg
new file mode 100644
index 00000000..9cd570ea
--- /dev/null
+++ b/application/assets/fonts/icons/menu.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/mic.svg b/application/assets/fonts/icons/mic.svg
new file mode 100644
index 00000000..5d440d95
--- /dev/null
+++ b/application/assets/fonts/icons/mic.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/minus.svg b/application/assets/fonts/icons/minus.svg
new file mode 100644
index 00000000..3411999d
--- /dev/null
+++ b/application/assets/fonts/icons/minus.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/mitten.svg b/application/assets/fonts/icons/mitten.svg
new file mode 100644
index 00000000..40dce333
--- /dev/null
+++ b/application/assets/fonts/icons/mitten.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/mobile-data.svg b/application/assets/fonts/icons/mobile-data.svg
new file mode 100644
index 00000000..6d17b187
--- /dev/null
+++ b/application/assets/fonts/icons/mobile-data.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/money-note.svg b/application/assets/fonts/icons/money-note.svg
new file mode 100644
index 00000000..6617e85e
--- /dev/null
+++ b/application/assets/fonts/icons/money-note.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/money-notes.svg b/application/assets/fonts/icons/money-notes.svg
new file mode 100644
index 00000000..17f0f350
--- /dev/null
+++ b/application/assets/fonts/icons/money-notes.svg
@@ -0,0 +1,24 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/money-stack.svg b/application/assets/fonts/icons/money-stack.svg
new file mode 100644
index 00000000..5d396f5f
--- /dev/null
+++ b/application/assets/fonts/icons/money-stack.svg
@@ -0,0 +1,28 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/monitor.svg b/application/assets/fonts/icons/monitor.svg
new file mode 100644
index 00000000..0b357ddc
--- /dev/null
+++ b/application/assets/fonts/icons/monitor.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/moon.svg b/application/assets/fonts/icons/moon.svg
new file mode 100644
index 00000000..a8649d54
--- /dev/null
+++ b/application/assets/fonts/icons/moon.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/more-h.svg b/application/assets/fonts/icons/more-h.svg
new file mode 100644
index 00000000..276854df
--- /dev/null
+++ b/application/assets/fonts/icons/more-h.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/more-v.svg b/application/assets/fonts/icons/more-v.svg
new file mode 100644
index 00000000..db955d62
--- /dev/null
+++ b/application/assets/fonts/icons/more-v.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/move.svg b/application/assets/fonts/icons/move.svg
new file mode 100644
index 00000000..3bb66829
--- /dev/null
+++ b/application/assets/fonts/icons/move.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/mug.svg b/application/assets/fonts/icons/mug.svg
new file mode 100644
index 00000000..62bd75dd
--- /dev/null
+++ b/application/assets/fonts/icons/mug.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/multiply.svg b/application/assets/fonts/icons/multiply.svg
new file mode 100644
index 00000000..77aa1d22
--- /dev/null
+++ b/application/assets/fonts/icons/multiply.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/music.svg b/application/assets/fonts/icons/music.svg
new file mode 100644
index 00000000..bf2271ba
--- /dev/null
+++ b/application/assets/fonts/icons/music.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/negative.svg b/application/assets/fonts/icons/negative.svg
new file mode 100644
index 00000000..0e2a9270
--- /dev/null
+++ b/application/assets/fonts/icons/negative.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/new.svg b/application/assets/fonts/icons/new.svg
new file mode 100644
index 00000000..87b631b2
--- /dev/null
+++ b/application/assets/fonts/icons/new.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/newspaper.svg b/application/assets/fonts/icons/newspaper.svg
new file mode 100644
index 00000000..c028e222
--- /dev/null
+++ b/application/assets/fonts/icons/newspaper.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/next.svg b/application/assets/fonts/icons/next.svg
new file mode 100644
index 00000000..91d5e5c2
--- /dev/null
+++ b/application/assets/fonts/icons/next.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/night-shift.svg b/application/assets/fonts/icons/night-shift.svg
new file mode 100644
index 00000000..a338f9c3
--- /dev/null
+++ b/application/assets/fonts/icons/night-shift.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/nintendo-switch-controller.svg b/application/assets/fonts/icons/nintendo-switch-controller.svg
new file mode 100644
index 00000000..b1fb60a4
--- /dev/null
+++ b/application/assets/fonts/icons/nintendo-switch-controller.svg
@@ -0,0 +1,25 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/nintendo-switch.svg b/application/assets/fonts/icons/nintendo-switch.svg
new file mode 100644
index 00000000..2db0f5b6
--- /dev/null
+++ b/application/assets/fonts/icons/nintendo-switch.svg
@@ -0,0 +1,23 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/no.svg b/application/assets/fonts/icons/no.svg
new file mode 100644
index 00000000..284ffeb0
--- /dev/null
+++ b/application/assets/fonts/icons/no.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/notification.svg b/application/assets/fonts/icons/notification.svg
new file mode 100644
index 00000000..e0efc04d
--- /dev/null
+++ b/application/assets/fonts/icons/notification.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/option.svg b/application/assets/fonts/icons/option.svg
new file mode 100644
index 00000000..f0612d56
--- /dev/null
+++ b/application/assets/fonts/icons/option.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/paperclip.svg b/application/assets/fonts/icons/paperclip.svg
new file mode 100644
index 00000000..f2d1535f
--- /dev/null
+++ b/application/assets/fonts/icons/paperclip.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/party-popper.svg b/application/assets/fonts/icons/party-popper.svg
new file mode 100644
index 00000000..4cd480ca
--- /dev/null
+++ b/application/assets/fonts/icons/party-popper.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/paste.svg b/application/assets/fonts/icons/paste.svg
new file mode 100644
index 00000000..b52a463c
--- /dev/null
+++ b/application/assets/fonts/icons/paste.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/pause.svg b/application/assets/fonts/icons/pause.svg
new file mode 100644
index 00000000..4f3dd48c
--- /dev/null
+++ b/application/assets/fonts/icons/pause.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/peach.svg b/application/assets/fonts/icons/peach.svg
new file mode 100644
index 00000000..e52ea892
--- /dev/null
+++ b/application/assets/fonts/icons/peach.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/pen-tool.svg b/application/assets/fonts/icons/pen-tool.svg
new file mode 100644
index 00000000..e23470f1
--- /dev/null
+++ b/application/assets/fonts/icons/pen-tool.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/percent.svg b/application/assets/fonts/icons/percent.svg
new file mode 100644
index 00000000..62b4e4e7
--- /dev/null
+++ b/application/assets/fonts/icons/percent.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/personal-hotspot.svg b/application/assets/fonts/icons/personal-hotspot.svg
new file mode 100644
index 00000000..d16445d1
--- /dev/null
+++ b/application/assets/fonts/icons/personal-hotspot.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/phone-alt.svg b/application/assets/fonts/icons/phone-alt.svg
new file mode 100644
index 00000000..e79231af
--- /dev/null
+++ b/application/assets/fonts/icons/phone-alt.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/phone.svg b/application/assets/fonts/icons/phone.svg
new file mode 100644
index 00000000..5c87c494
--- /dev/null
+++ b/application/assets/fonts/icons/phone.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/photo-contrast.svg b/application/assets/fonts/icons/photo-contrast.svg
new file mode 100644
index 00000000..498d71b4
--- /dev/null
+++ b/application/assets/fonts/icons/photo-contrast.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/photo-exposure.svg b/application/assets/fonts/icons/photo-exposure.svg
new file mode 100644
index 00000000..81d33ea4
--- /dev/null
+++ b/application/assets/fonts/icons/photo-exposure.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/photo-saturation.svg b/application/assets/fonts/icons/photo-saturation.svg
new file mode 100644
index 00000000..ab6265b1
--- /dev/null
+++ b/application/assets/fonts/icons/photo-saturation.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/photo-sharpen.svg b/application/assets/fonts/icons/photo-sharpen.svg
new file mode 100644
index 00000000..649e31fe
--- /dev/null
+++ b/application/assets/fonts/icons/photo-sharpen.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/photo-straighten.svg b/application/assets/fonts/icons/photo-straighten.svg
new file mode 100644
index 00000000..06fdaa62
--- /dev/null
+++ b/application/assets/fonts/icons/photo-straighten.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/photo-vignette.svg b/application/assets/fonts/icons/photo-vignette.svg
new file mode 100644
index 00000000..2e182280
--- /dev/null
+++ b/application/assets/fonts/icons/photo-vignette.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/photo.svg b/application/assets/fonts/icons/photo.svg
new file mode 100644
index 00000000..9c2cdc17
--- /dev/null
+++ b/application/assets/fonts/icons/photo.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/photos.svg b/application/assets/fonts/icons/photos.svg
new file mode 100644
index 00000000..fe80cdb5
--- /dev/null
+++ b/application/assets/fonts/icons/photos.svg
@@ -0,0 +1,23 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/piggy-bank.svg b/application/assets/fonts/icons/piggy-bank.svg
new file mode 100644
index 00000000..03ecf0b7
--- /dev/null
+++ b/application/assets/fonts/icons/piggy-bank.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/plane.svg b/application/assets/fonts/icons/plane.svg
new file mode 100644
index 00000000..3769cc12
--- /dev/null
+++ b/application/assets/fonts/icons/plane.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/planet.svg b/application/assets/fonts/icons/planet.svg
new file mode 100644
index 00000000..d6c4081c
--- /dev/null
+++ b/application/assets/fonts/icons/planet.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/plant.svg b/application/assets/fonts/icons/plant.svg
new file mode 100644
index 00000000..677defdb
--- /dev/null
+++ b/application/assets/fonts/icons/plant.svg
@@ -0,0 +1,25 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/play.svg b/application/assets/fonts/icons/play.svg
new file mode 100644
index 00000000..38bd2197
--- /dev/null
+++ b/application/assets/fonts/icons/play.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/playlist.svg b/application/assets/fonts/icons/playlist.svg
new file mode 100644
index 00000000..ebeb58c7
--- /dev/null
+++ b/application/assets/fonts/icons/playlist.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/plug-socket-aus.svg b/application/assets/fonts/icons/plug-socket-aus.svg
new file mode 100644
index 00000000..0aa192bd
--- /dev/null
+++ b/application/assets/fonts/icons/plug-socket-aus.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/plug-socket-eu.svg b/application/assets/fonts/icons/plug-socket-eu.svg
new file mode 100644
index 00000000..d039de28
--- /dev/null
+++ b/application/assets/fonts/icons/plug-socket-eu.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/plug-socket-uk.svg b/application/assets/fonts/icons/plug-socket-uk.svg
new file mode 100644
index 00000000..f66dc7a8
--- /dev/null
+++ b/application/assets/fonts/icons/plug-socket-uk.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/plug-socket-us.svg b/application/assets/fonts/icons/plug-socket-us.svg
new file mode 100644
index 00000000..c05cfea3
--- /dev/null
+++ b/application/assets/fonts/icons/plug-socket-us.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/plug.svg b/application/assets/fonts/icons/plug.svg
new file mode 100644
index 00000000..aa438327
--- /dev/null
+++ b/application/assets/fonts/icons/plug.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/plus.svg b/application/assets/fonts/icons/plus.svg
new file mode 100644
index 00000000..34cda85c
--- /dev/null
+++ b/application/assets/fonts/icons/plus.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/podcasts.svg b/application/assets/fonts/icons/podcasts.svg
new file mode 100644
index 00000000..0ca79621
--- /dev/null
+++ b/application/assets/fonts/icons/podcasts.svg
@@ -0,0 +1,26 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/pokeball.svg b/application/assets/fonts/icons/pokeball.svg
new file mode 100644
index 00000000..8393f83c
--- /dev/null
+++ b/application/assets/fonts/icons/pokeball.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/polaroids.svg b/application/assets/fonts/icons/polaroids.svg
new file mode 100644
index 00000000..70ccc174
--- /dev/null
+++ b/application/assets/fonts/icons/polaroids.svg
@@ -0,0 +1,22 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/poop.svg b/application/assets/fonts/icons/poop.svg
new file mode 100644
index 00000000..42032a1e
--- /dev/null
+++ b/application/assets/fonts/icons/poop.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/power.svg b/application/assets/fonts/icons/power.svg
new file mode 100644
index 00000000..d10600d1
--- /dev/null
+++ b/application/assets/fonts/icons/power.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/previous.svg b/application/assets/fonts/icons/previous.svg
new file mode 100644
index 00000000..865fa898
--- /dev/null
+++ b/application/assets/fonts/icons/previous.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/printer.svg b/application/assets/fonts/icons/printer.svg
new file mode 100644
index 00000000..dbcfdd92
--- /dev/null
+++ b/application/assets/fonts/icons/printer.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/pumpkin.svg b/application/assets/fonts/icons/pumpkin.svg
new file mode 100644
index 00000000..346bc6b3
--- /dev/null
+++ b/application/assets/fonts/icons/pumpkin.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/purse.svg b/application/assets/fonts/icons/purse.svg
new file mode 100644
index 00000000..18e8d742
--- /dev/null
+++ b/application/assets/fonts/icons/purse.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/puzzle.svg b/application/assets/fonts/icons/puzzle.svg
new file mode 100644
index 00000000..c4d839ec
--- /dev/null
+++ b/application/assets/fonts/icons/puzzle.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/qr-code.svg b/application/assets/fonts/icons/qr-code.svg
new file mode 100644
index 00000000..d658e421
--- /dev/null
+++ b/application/assets/fonts/icons/qr-code.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/queue.svg b/application/assets/fonts/icons/queue.svg
new file mode 100644
index 00000000..41b2130b
--- /dev/null
+++ b/application/assets/fonts/icons/queue.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/radar.svg b/application/assets/fonts/icons/radar.svg
new file mode 100644
index 00000000..40adbf71
--- /dev/null
+++ b/application/assets/fonts/icons/radar.svg
@@ -0,0 +1,33 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/rainbow.svg b/application/assets/fonts/icons/rainbow.svg
new file mode 100644
index 00000000..404de82d
--- /dev/null
+++ b/application/assets/fonts/icons/rainbow.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/receipt-print.svg b/application/assets/fonts/icons/receipt-print.svg
new file mode 100644
index 00000000..f9cfae44
--- /dev/null
+++ b/application/assets/fonts/icons/receipt-print.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/receipt.svg b/application/assets/fonts/icons/receipt.svg
new file mode 100644
index 00000000..9c89424f
--- /dev/null
+++ b/application/assets/fonts/icons/receipt.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/redo-alt.svg b/application/assets/fonts/icons/redo-alt.svg
new file mode 100644
index 00000000..b2e23bcf
--- /dev/null
+++ b/application/assets/fonts/icons/redo-alt.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/redo.svg b/application/assets/fonts/icons/redo.svg
new file mode 100644
index 00000000..43668e35
--- /dev/null
+++ b/application/assets/fonts/icons/redo.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/refresh.svg b/application/assets/fonts/icons/refresh.svg
new file mode 100644
index 00000000..9caa9be4
--- /dev/null
+++ b/application/assets/fonts/icons/refresh.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/reindeer.svg b/application/assets/fonts/icons/reindeer.svg
new file mode 100644
index 00000000..9df6baf7
--- /dev/null
+++ b/application/assets/fonts/icons/reindeer.svg
@@ -0,0 +1,22 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/remove.svg b/application/assets/fonts/icons/remove.svg
new file mode 100644
index 00000000..ed6e174e
--- /dev/null
+++ b/application/assets/fonts/icons/remove.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/repeat.svg b/application/assets/fonts/icons/repeat.svg
new file mode 100644
index 00000000..94e1ecdb
--- /dev/null
+++ b/application/assets/fonts/icons/repeat.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/reply-all.svg b/application/assets/fonts/icons/reply-all.svg
new file mode 100644
index 00000000..afa9859f
--- /dev/null
+++ b/application/assets/fonts/icons/reply-all.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/reply.svg b/application/assets/fonts/icons/reply.svg
new file mode 100644
index 00000000..435b8d33
--- /dev/null
+++ b/application/assets/fonts/icons/reply.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/robot.svg b/application/assets/fonts/icons/robot.svg
new file mode 100644
index 00000000..4d1a35a0
--- /dev/null
+++ b/application/assets/fonts/icons/robot.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/rocket.svg b/application/assets/fonts/icons/rocket.svg
new file mode 100644
index 00000000..5a1e418e
--- /dev/null
+++ b/application/assets/fonts/icons/rocket.svg
@@ -0,0 +1,26 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/rosette.svg b/application/assets/fonts/icons/rosette.svg
new file mode 100644
index 00000000..05445871
--- /dev/null
+++ b/application/assets/fonts/icons/rosette.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/rotation-lock-off.svg b/application/assets/fonts/icons/rotation-lock-off.svg
new file mode 100644
index 00000000..79a1a040
--- /dev/null
+++ b/application/assets/fonts/icons/rotation-lock-off.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/rotation-lock-on.svg b/application/assets/fonts/icons/rotation-lock-on.svg
new file mode 100644
index 00000000..44c33624
--- /dev/null
+++ b/application/assets/fonts/icons/rotation-lock-on.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/santa-hat.svg b/application/assets/fonts/icons/santa-hat.svg
new file mode 100644
index 00000000..4dd73a19
--- /dev/null
+++ b/application/assets/fonts/icons/santa-hat.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/save.svg b/application/assets/fonts/icons/save.svg
new file mode 100644
index 00000000..09e8e293
--- /dev/null
+++ b/application/assets/fonts/icons/save.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/scales-2.svg b/application/assets/fonts/icons/scales-2.svg
new file mode 100644
index 00000000..1294f227
--- /dev/null
+++ b/application/assets/fonts/icons/scales-2.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/scales.svg b/application/assets/fonts/icons/scales.svg
new file mode 100644
index 00000000..648e040b
--- /dev/null
+++ b/application/assets/fonts/icons/scales.svg
@@ -0,0 +1,21 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/screwdriver.svg b/application/assets/fonts/icons/screwdriver.svg
new file mode 100644
index 00000000..eccbcb4f
--- /dev/null
+++ b/application/assets/fonts/icons/screwdriver.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/search.svg b/application/assets/fonts/icons/search.svg
new file mode 100644
index 00000000..a5a50de3
--- /dev/null
+++ b/application/assets/fonts/icons/search.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/selection-rect.svg b/application/assets/fonts/icons/selection-rect.svg
new file mode 100644
index 00000000..ea162672
--- /dev/null
+++ b/application/assets/fonts/icons/selection-rect.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/selection-round.svg b/application/assets/fonts/icons/selection-round.svg
new file mode 100644
index 00000000..6609e683
--- /dev/null
+++ b/application/assets/fonts/icons/selection-round.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/send.svg b/application/assets/fonts/icons/send.svg
new file mode 100644
index 00000000..73d0c057
--- /dev/null
+++ b/application/assets/fonts/icons/send.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/server.svg b/application/assets/fonts/icons/server.svg
new file mode 100644
index 00000000..1eff456b
--- /dev/null
+++ b/application/assets/fonts/icons/server.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/settings.svg b/application/assets/fonts/icons/settings.svg
new file mode 100644
index 00000000..ad53e373
--- /dev/null
+++ b/application/assets/fonts/icons/settings.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/share.svg b/application/assets/fonts/icons/share.svg
new file mode 100644
index 00000000..d5dc4203
--- /dev/null
+++ b/application/assets/fonts/icons/share.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/shield.svg b/application/assets/fonts/icons/shield.svg
new file mode 100644
index 00000000..45c20f19
--- /dev/null
+++ b/application/assets/fonts/icons/shield.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/shift.svg b/application/assets/fonts/icons/shift.svg
new file mode 100644
index 00000000..f9feef60
--- /dev/null
+++ b/application/assets/fonts/icons/shift.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/shooting-star.svg b/application/assets/fonts/icons/shooting-star.svg
new file mode 100644
index 00000000..d57bc247
--- /dev/null
+++ b/application/assets/fonts/icons/shooting-star.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/shuffle.svg b/application/assets/fonts/icons/shuffle.svg
new file mode 100644
index 00000000..c13511f1
--- /dev/null
+++ b/application/assets/fonts/icons/shuffle.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/sidebar.svg b/application/assets/fonts/icons/sidebar.svg
new file mode 100644
index 00000000..b26fdd15
--- /dev/null
+++ b/application/assets/fonts/icons/sidebar.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/siri.svg b/application/assets/fonts/icons/siri.svg
new file mode 100644
index 00000000..f0cf394e
--- /dev/null
+++ b/application/assets/fonts/icons/siri.svg
@@ -0,0 +1,24 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/skull.svg b/application/assets/fonts/icons/skull.svg
new file mode 100644
index 00000000..daa2ee2e
--- /dev/null
+++ b/application/assets/fonts/icons/skull.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/smart-home.svg b/application/assets/fonts/icons/smart-home.svg
new file mode 100644
index 00000000..79d38265
--- /dev/null
+++ b/application/assets/fonts/icons/smart-home.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/snapchat.svg b/application/assets/fonts/icons/snapchat.svg
new file mode 100644
index 00000000..a535f63a
--- /dev/null
+++ b/application/assets/fonts/icons/snapchat.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/snowflake-2.svg b/application/assets/fonts/icons/snowflake-2.svg
new file mode 100644
index 00000000..09bb46e9
--- /dev/null
+++ b/application/assets/fonts/icons/snowflake-2.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/snowflake.svg b/application/assets/fonts/icons/snowflake.svg
new file mode 100644
index 00000000..9c9d3be7
--- /dev/null
+++ b/application/assets/fonts/icons/snowflake.svg
@@ -0,0 +1,29 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/snowglobe.svg b/application/assets/fonts/icons/snowglobe.svg
new file mode 100644
index 00000000..76b63934
--- /dev/null
+++ b/application/assets/fonts/icons/snowglobe.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/snowman.svg b/application/assets/fonts/icons/snowman.svg
new file mode 100644
index 00000000..7fe010a6
--- /dev/null
+++ b/application/assets/fonts/icons/snowman.svg
@@ -0,0 +1,22 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/song.svg b/application/assets/fonts/icons/song.svg
new file mode 100644
index 00000000..448f32f6
--- /dev/null
+++ b/application/assets/fonts/icons/song.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/sound.svg b/application/assets/fonts/icons/sound.svg
new file mode 100644
index 00000000..89063336
--- /dev/null
+++ b/application/assets/fonts/icons/sound.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/spanner-alt.svg b/application/assets/fonts/icons/spanner-alt.svg
new file mode 100644
index 00000000..1aad60cf
--- /dev/null
+++ b/application/assets/fonts/icons/spanner-alt.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/spanner.svg b/application/assets/fonts/icons/spanner.svg
new file mode 100644
index 00000000..880b4e35
--- /dev/null
+++ b/application/assets/fonts/icons/spanner.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/sparkle.svg b/application/assets/fonts/icons/sparkle.svg
new file mode 100644
index 00000000..09358a52
--- /dev/null
+++ b/application/assets/fonts/icons/sparkle.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/speaker.svg b/application/assets/fonts/icons/speaker.svg
new file mode 100644
index 00000000..0211130f
--- /dev/null
+++ b/application/assets/fonts/icons/speaker.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/stamp.svg b/application/assets/fonts/icons/stamp.svg
new file mode 100644
index 00000000..35d48e85
--- /dev/null
+++ b/application/assets/fonts/icons/stamp.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/star-filled.svg b/application/assets/fonts/icons/star-filled.svg
new file mode 100644
index 00000000..3490c443
--- /dev/null
+++ b/application/assets/fonts/icons/star-filled.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/star.svg b/application/assets/fonts/icons/star.svg
new file mode 100644
index 00000000..5ba8f61e
--- /dev/null
+++ b/application/assets/fonts/icons/star.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/stocking.svg b/application/assets/fonts/icons/stocking.svg
new file mode 100644
index 00000000..d0041042
--- /dev/null
+++ b/application/assets/fonts/icons/stocking.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/store.svg b/application/assets/fonts/icons/store.svg
new file mode 100644
index 00000000..e3528051
--- /dev/null
+++ b/application/assets/fonts/icons/store.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/succulent.svg b/application/assets/fonts/icons/succulent.svg
new file mode 100644
index 00000000..774b5e21
--- /dev/null
+++ b/application/assets/fonts/icons/succulent.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/suitcase.svg b/application/assets/fonts/icons/suitcase.svg
new file mode 100644
index 00000000..74aa914d
--- /dev/null
+++ b/application/assets/fonts/icons/suitcase.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/sunrise.svg b/application/assets/fonts/icons/sunrise.svg
new file mode 100644
index 00000000..3b432c11
--- /dev/null
+++ b/application/assets/fonts/icons/sunrise.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/sunset.svg b/application/assets/fonts/icons/sunset.svg
new file mode 100644
index 00000000..9c3dac54
--- /dev/null
+++ b/application/assets/fonts/icons/sunset.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/switch.svg b/application/assets/fonts/icons/switch.svg
new file mode 100644
index 00000000..70328e25
--- /dev/null
+++ b/application/assets/fonts/icons/switch.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/sync.svg b/application/assets/fonts/icons/sync.svg
new file mode 100644
index 00000000..61c86cbb
--- /dev/null
+++ b/application/assets/fonts/icons/sync.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/tablet.svg b/application/assets/fonts/icons/tablet.svg
new file mode 100644
index 00000000..ed60e743
--- /dev/null
+++ b/application/assets/fonts/icons/tablet.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/tabs.svg b/application/assets/fonts/icons/tabs.svg
new file mode 100644
index 00000000..27e1155a
--- /dev/null
+++ b/application/assets/fonts/icons/tabs.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/tag.svg b/application/assets/fonts/icons/tag.svg
new file mode 100644
index 00000000..897be30a
--- /dev/null
+++ b/application/assets/fonts/icons/tag.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/team.svg b/application/assets/fonts/icons/team.svg
new file mode 100644
index 00000000..33e1793f
--- /dev/null
+++ b/application/assets/fonts/icons/team.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/terminal.svg b/application/assets/fonts/icons/terminal.svg
new file mode 100644
index 00000000..07aacb92
--- /dev/null
+++ b/application/assets/fonts/icons/terminal.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/the-monster.svg b/application/assets/fonts/icons/the-monster.svg
new file mode 100644
index 00000000..f631f5ec
--- /dev/null
+++ b/application/assets/fonts/icons/the-monster.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/thermometer-high.svg b/application/assets/fonts/icons/thermometer-high.svg
new file mode 100644
index 00000000..9b5deee6
--- /dev/null
+++ b/application/assets/fonts/icons/thermometer-high.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/thermometer-low.svg b/application/assets/fonts/icons/thermometer-low.svg
new file mode 100644
index 00000000..64505282
--- /dev/null
+++ b/application/assets/fonts/icons/thermometer-low.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/thermometer.svg b/application/assets/fonts/icons/thermometer.svg
new file mode 100644
index 00000000..0d463371
--- /dev/null
+++ b/application/assets/fonts/icons/thermometer.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/thumbs-down.svg b/application/assets/fonts/icons/thumbs-down.svg
new file mode 100644
index 00000000..cccb1024
--- /dev/null
+++ b/application/assets/fonts/icons/thumbs-down.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/thumbs-up.svg b/application/assets/fonts/icons/thumbs-up.svg
new file mode 100644
index 00000000..287ebb79
--- /dev/null
+++ b/application/assets/fonts/icons/thumbs-up.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/tick.svg b/application/assets/fonts/icons/tick.svg
new file mode 100644
index 00000000..438dc61e
--- /dev/null
+++ b/application/assets/fonts/icons/tick.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/ticket.svg b/application/assets/fonts/icons/ticket.svg
new file mode 100644
index 00000000..2070bc35
--- /dev/null
+++ b/application/assets/fonts/icons/ticket.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/time-machine.svg b/application/assets/fonts/icons/time-machine.svg
new file mode 100644
index 00000000..ebe9177b
--- /dev/null
+++ b/application/assets/fonts/icons/time-machine.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/timer.svg b/application/assets/fonts/icons/timer.svg
new file mode 100644
index 00000000..a90713cd
--- /dev/null
+++ b/application/assets/fonts/icons/timer.svg
@@ -0,0 +1,24 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/trash-full.svg b/application/assets/fonts/icons/trash-full.svg
new file mode 100644
index 00000000..1b01c860
--- /dev/null
+++ b/application/assets/fonts/icons/trash-full.svg
@@ -0,0 +1,29 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/trash.svg b/application/assets/fonts/icons/trash.svg
new file mode 100644
index 00000000..63791cd5
--- /dev/null
+++ b/application/assets/fonts/icons/trash.svg
@@ -0,0 +1,23 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/trophy.svg b/application/assets/fonts/icons/trophy.svg
new file mode 100644
index 00000000..f5d6090a
--- /dev/null
+++ b/application/assets/fonts/icons/trophy.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/truck-fast.svg b/application/assets/fonts/icons/truck-fast.svg
new file mode 100644
index 00000000..56f192cf
--- /dev/null
+++ b/application/assets/fonts/icons/truck-fast.svg
@@ -0,0 +1,21 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/truck.svg b/application/assets/fonts/icons/truck.svg
new file mode 100644
index 00000000..bb18d018
--- /dev/null
+++ b/application/assets/fonts/icons/truck.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/tv.svg b/application/assets/fonts/icons/tv.svg
new file mode 100644
index 00000000..45c2dbd1
--- /dev/null
+++ b/application/assets/fonts/icons/tv.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/twitter.svg b/application/assets/fonts/icons/twitter.svg
new file mode 100644
index 00000000..51083264
--- /dev/null
+++ b/application/assets/fonts/icons/twitter.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/undo-alt.svg b/application/assets/fonts/icons/undo-alt.svg
new file mode 100644
index 00000000..cbd663de
--- /dev/null
+++ b/application/assets/fonts/icons/undo-alt.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/undo.svg b/application/assets/fonts/icons/undo.svg
new file mode 100644
index 00000000..5349635b
--- /dev/null
+++ b/application/assets/fonts/icons/undo.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/upload.svg b/application/assets/fonts/icons/upload.svg
new file mode 100644
index 00000000..a4f9ea1b
--- /dev/null
+++ b/application/assets/fonts/icons/upload.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/user-add.svg b/application/assets/fonts/icons/user-add.svg
new file mode 100644
index 00000000..bb8e1522
--- /dev/null
+++ b/application/assets/fonts/icons/user-add.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/user-delete.svg b/application/assets/fonts/icons/user-delete.svg
new file mode 100644
index 00000000..916ca95a
--- /dev/null
+++ b/application/assets/fonts/icons/user-delete.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/user-remove.svg b/application/assets/fonts/icons/user-remove.svg
new file mode 100644
index 00000000..115598f2
--- /dev/null
+++ b/application/assets/fonts/icons/user-remove.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/user.svg b/application/assets/fonts/icons/user.svg
new file mode 100644
index 00000000..fc546045
--- /dev/null
+++ b/application/assets/fonts/icons/user.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/users.svg b/application/assets/fonts/icons/users.svg
new file mode 100644
index 00000000..a004a751
--- /dev/null
+++ b/application/assets/fonts/icons/users.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/video.svg b/application/assets/fonts/icons/video.svg
new file mode 100644
index 00000000..df9eaaa2
--- /dev/null
+++ b/application/assets/fonts/icons/video.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/vinyl.svg b/application/assets/fonts/icons/vinyl.svg
new file mode 100644
index 00000000..53eae87a
--- /dev/null
+++ b/application/assets/fonts/icons/vinyl.svg
@@ -0,0 +1,25 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/voicemail.svg b/application/assets/fonts/icons/voicemail.svg
new file mode 100644
index 00000000..3d80788c
--- /dev/null
+++ b/application/assets/fonts/icons/voicemail.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/volume-down.svg b/application/assets/fonts/icons/volume-down.svg
new file mode 100644
index 00000000..fc08979c
--- /dev/null
+++ b/application/assets/fonts/icons/volume-down.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/volume-mute.svg b/application/assets/fonts/icons/volume-mute.svg
new file mode 100644
index 00000000..f7efe259
--- /dev/null
+++ b/application/assets/fonts/icons/volume-mute.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/volume-up.svg b/application/assets/fonts/icons/volume-up.svg
new file mode 100644
index 00000000..e7ed3d28
--- /dev/null
+++ b/application/assets/fonts/icons/volume-up.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/wallet-2.svg b/application/assets/fonts/icons/wallet-2.svg
new file mode 100644
index 00000000..76293363
--- /dev/null
+++ b/application/assets/fonts/icons/wallet-2.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/wallet.svg b/application/assets/fonts/icons/wallet.svg
new file mode 100644
index 00000000..612fc039
--- /dev/null
+++ b/application/assets/fonts/icons/wallet.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/watch-apple.svg b/application/assets/fonts/icons/watch-apple.svg
new file mode 100644
index 00000000..ad240761
--- /dev/null
+++ b/application/assets/fonts/icons/watch-apple.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/watch-classic.svg b/application/assets/fonts/icons/watch-classic.svg
new file mode 100644
index 00000000..f71c9bf7
--- /dev/null
+++ b/application/assets/fonts/icons/watch-classic.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/watch-smart.svg b/application/assets/fonts/icons/watch-smart.svg
new file mode 100644
index 00000000..1c2c4262
--- /dev/null
+++ b/application/assets/fonts/icons/watch-smart.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/water-drop.svg b/application/assets/fonts/icons/water-drop.svg
new file mode 100644
index 00000000..20ad183b
--- /dev/null
+++ b/application/assets/fonts/icons/water-drop.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/wifi-01.svg b/application/assets/fonts/icons/wifi-01.svg
new file mode 100644
index 00000000..8df0ae46
--- /dev/null
+++ b/application/assets/fonts/icons/wifi-01.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/wifi-02.svg b/application/assets/fonts/icons/wifi-02.svg
new file mode 100644
index 00000000..0afb2b9f
--- /dev/null
+++ b/application/assets/fonts/icons/wifi-02.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/wifi-03.svg b/application/assets/fonts/icons/wifi-03.svg
new file mode 100644
index 00000000..8ed42cd7
--- /dev/null
+++ b/application/assets/fonts/icons/wifi-03.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/wifi-04.svg b/application/assets/fonts/icons/wifi-04.svg
new file mode 100644
index 00000000..e3b1f44a
--- /dev/null
+++ b/application/assets/fonts/icons/wifi-04.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/wifi-error.svg b/application/assets/fonts/icons/wifi-error.svg
new file mode 100644
index 00000000..21daa2e2
--- /dev/null
+++ b/application/assets/fonts/icons/wifi-error.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/wind.svg b/application/assets/fonts/icons/wind.svg
new file mode 100644
index 00000000..e9f6001f
--- /dev/null
+++ b/application/assets/fonts/icons/wind.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/window.svg b/application/assets/fonts/icons/window.svg
new file mode 100644
index 00000000..d70ec947
--- /dev/null
+++ b/application/assets/fonts/icons/window.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/witch-hat.svg b/application/assets/fonts/icons/witch-hat.svg
new file mode 100644
index 00000000..1d24a07b
--- /dev/null
+++ b/application/assets/fonts/icons/witch-hat.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/wooly-hat.svg b/application/assets/fonts/icons/wooly-hat.svg
new file mode 100644
index 00000000..1f4ec9e1
--- /dev/null
+++ b/application/assets/fonts/icons/wooly-hat.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/wreath.svg b/application/assets/fonts/icons/wreath.svg
new file mode 100644
index 00000000..7df454ec
--- /dev/null
+++ b/application/assets/fonts/icons/wreath.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/wrench.svg b/application/assets/fonts/icons/wrench.svg
new file mode 100644
index 00000000..0c0b54c5
--- /dev/null
+++ b/application/assets/fonts/icons/wrench.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/yin-yang.svg b/application/assets/fonts/icons/yin-yang.svg
new file mode 100644
index 00000000..bfd71143
--- /dev/null
+++ b/application/assets/fonts/icons/yin-yang.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/youtube.svg b/application/assets/fonts/icons/youtube.svg
new file mode 100644
index 00000000..b3a48daf
--- /dev/null
+++ b/application/assets/fonts/icons/youtube.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/zoom-in.svg b/application/assets/fonts/icons/zoom-in.svg
new file mode 100644
index 00000000..125430d7
--- /dev/null
+++ b/application/assets/fonts/icons/zoom-in.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/application/assets/fonts/icons/zoom-out.svg b/application/assets/fonts/icons/zoom-out.svg
new file mode 100644
index 00000000..b7a96778
--- /dev/null
+++ b/application/assets/fonts/icons/zoom-out.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/application/assets/image/podcast.png b/application/assets/image/podcast.png
new file mode 100644
index 00000000..ac53d44d
Binary files /dev/null and b/application/assets/image/podcast.png differ
diff --git a/application/assets/image/youtube.png b/application/assets/image/youtube.png
new file mode 100644
index 00000000..71051ffa
Binary files /dev/null and b/application/assets/image/youtube.png differ
diff --git a/application/assets/js/helper.js b/application/assets/js/helper.js
new file mode 100644
index 00000000..d06a91e9
--- /dev/null
+++ b/application/assets/js/helper.js
@@ -0,0 +1,374 @@
+"use strict";
+
+function hashCode(str) {
+ var hash = 0;
+ for (var i = 0; i < str.length; i++) {
+ hash = ~~((hash << 5) - hash + str.charCodeAt(i));
+ }
+ return hash;
+}
+
+function intToRGB(i) {
+ var c = (i & 0x00ffffff).toString(16).toUpperCase();
+
+ return "00000".substring(0, 6 - c.length) + c;
+}
+
+function getRandomInteger(min, max) {
+ min = Math.ceil(min);
+ max = Math.floor(max);
+ return Math.floor(Math.random() * (max - min)) + min;
+}
+
+function notify(param_title, param_text, param_silent, requireInteraction) {
+ var options = {
+ body: param_text,
+ silent: param_silent,
+ requireInteraction: requireInteraction,
+ };
+
+ // Let's check if the browser supports notifications
+ if (!("Notification" in window)) {
+ alert("This browser does not support desktop notification");
+ }
+
+ // Let's check whether notification permissions have already been granted
+ else if (Notification.permission === "granted") {
+ // If it's okay let's create a notification
+ var notification = new Notification(param_title, options);
+ }
+
+ // Otherwise, we need to ask the user for permission
+ else if (Notification.permission !== "denied") {
+ Notification.requestPermission().then(function (permission) {
+ // If the user accepts, let's create a notification
+ if (permission === "granted") {
+ var notification = new Notification(param_title, options, action);
+
+ document.addEventListener("visibilitychange", function () {
+ if (document.visibilityState === "visible") {
+ // The tab has become visible so clear the now-stale Notification.
+ notification.close();
+
+ toaster("yes", 2000);
+ }
+ });
+ }
+ });
+ }
+}
+
+function share(url) {
+ var activity = new MozActivity({
+ name: "share",
+ data: {
+ type: "url",
+ url: url,
+ },
+ });
+
+ activity.onsuccess = function () {};
+
+ activity.onerror = function () {
+ console.log("The activity encounter en error: " + this.error);
+ };
+}
+
+//check if internet connection
+function check_iconnection() {
+ function updateOfflineStatus() {
+ toaster("Your Browser is offline", 15000);
+ return false;
+ }
+
+ window.addEventListener("offline", updateOfflineStatus);
+}
+
+function delete_file(filename) {
+ var sdcard = navigator.getDeviceStorages("sdcard");
+ var request = sdcard[1].delete(filename);
+
+ request.onsuccess = function () {
+ //toaster("File deleted", 2000);
+ };
+
+ request.onerror = function () {
+ //toaster("Unable to delete the file: " + this.error, 2000);
+ };
+}
+
+function get_file(filename) {
+ var sdcard = navigator.getDeviceStorages("sdcard");
+ var request = sdcard[1].get(filename);
+
+ request.onsuccess = function () {
+ var file = this.result;
+ //alert("Get the file: " + file.name);
+ };
+
+ request.onerror = function () {
+ //alert("Unable to get the file: " + this.error);
+ };
+}
+
+function write_file(data, filename) {
+ var sdcard = navigator.getDeviceStorages("sdcard");
+ var file = new Blob([data], {
+ type: "text/plain",
+ });
+ var request = sdcard[1].addNamed(file, filename);
+
+ request.onsuccess = function () {
+ var name = this.result;
+ //toaster('File "' + name + '" successfully wrote on the sdcard storage area', 2000);
+ };
+
+ // An error typically occur if a file with the same name already exist
+ request.onerror = function () {
+ toaster("Unable to write the file: " + this.error, 2000);
+ };
+}
+
+function add_source(url, limit, categorie, channel) {
+ let sdcard = navigator.getDeviceStorages("sdcard");
+ let request = sdcard[1].get("rss-reader.json");
+
+ request.onsuccess = function () {
+ let fileget = this.result;
+ let reader = new FileReader();
+
+ reader.addEventListener("loadend", function (event) {
+ let data;
+ //check if json valid
+ try {
+ data = JSON.parse(event.target.result);
+ } catch (e) {
+ toaster("Json is not valid", 2000);
+ return false;
+ }
+
+ data.push({
+ categorie: categorie,
+ url: url,
+ limit: limit,
+ channel: channel,
+ });
+
+ let extData = JSON.stringify(data);
+
+ var request_del = sdcard[1].delete("rss-reader.json");
+
+ request_del.onsuccess = function () {
+ //toaster('File successfully removed.', 2000);
+
+ let file = new Blob([extData], {
+ type: "application/json",
+ });
+ let requestAdd = sdcard[1].addNamed(file, "rss-reader.json");
+
+ requestAdd.onsuccess = function () {
+ toaster(
+ "
the rss feed has been successfully added to your list.",
+ 3000
+ );
+ };
+
+ requestAdd.onerror = function () {
+ toaster("Unable to write the file: " + this.error);
+ };
+ };
+
+ request_del.onerror = function () {
+ //toaster('Unable to remove the file: ' + this.error);
+ };
+ });
+
+ reader.readAsText(fileget);
+ };
+
+ request.onerror = function () {
+ toaster(this.error, 3000);
+ };
+}
+
+const helper = (() => {
+ function validate(url) {
+ var pattern = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/;
+ if (pattern.test(url)) {
+ return true;
+ }
+ return false;
+ }
+
+ let getManifest = function (callback) {
+ if (!navigator.mozApps) {
+ //let t = document.getElementById("kaisos-ads");
+ //t.remove();
+ return false;
+ }
+ let self = navigator.mozApps.getSelf();
+ self.onsuccess = function () {
+ callback(self.result);
+ };
+ self.onerror = function () {};
+ };
+
+ let queue = [];
+ let timeout;
+ let toaster = function (text, time) {
+ queue.push({ text: text, time: time });
+ if (queue.length === 1) {
+ toast_q(text, time);
+ }
+ };
+
+ //bottom bar
+ let bottom_bar = function (left, center, right) {
+ document.querySelector("div#bottom-bar div#button-left").textContent = left;
+ document.querySelector(
+ "div#bottom-bar div#button-center"
+ ).textContent = center;
+ document.querySelector(
+ "div#bottom-bar div#button-right"
+ ).textContent = right;
+
+ if (left == "" && center == "" && right == "") {
+ document.querySelector("div#bottom-bar").style.display = "none";
+ } else {
+ document.querySelector("div#bottom-bar").style.display = "block";
+ }
+ };
+
+ //top bar
+ let top_bar = function (left, center, right) {
+ document.querySelector("div#top-bar div.button-left").innerHTML = left;
+ document.querySelector(
+ "div#top-bar div.button-center"
+ ).textContent = center;
+ document.querySelector("div#top-bar div.button-right").textContent = right;
+
+ if (left == "" && center == "" && right == "") {
+ document.querySelector("div#top-bar").style.display = "none";
+ } else {
+ document.querySelector("div#top-bar").style.display = "block";
+ }
+ };
+
+ let add_script = function (script) {
+ document.body.appendChild(document.createElement("script")).src = script;
+ };
+
+ let toast_q = function (text, time) {
+ var x = document.querySelector("div#toast");
+ x.innerHTML = queue[0].text;
+
+ x.style.transform = "translate(0px, 0px)";
+
+ timeout = setTimeout(function () {
+ timeout = null;
+ x.style.transform = "translate(0px, -100px)";
+ queue = queue.slice(1);
+ if (queue.length > 0) {
+ setTimeout(() => {
+ toast_q(text, time);
+ }, 1000);
+ }
+ }, time);
+ };
+
+ let lock;
+ let screenlock = function (stat) {
+ if (typeof window.navigator.requestWakeLock === "undefined") {
+ return false;
+ }
+ if (stat == "lock") {
+ lock = window.navigator.requestWakeLock("screen");
+ lock.onsuccess = function () {};
+ lock.onerror = function () {
+ alert("An error occurred: " + this.error.name);
+ };
+ }
+
+ if (stat == "unlock") {
+ if (lock.topic == "screen") {
+ lock.unlock();
+ }
+ }
+ };
+
+ //filesize
+ function formatFileSize(bytes, decimalPoint) {
+ if (bytes || bytes > 0 || bytes != undefined || bytes != NaN) {
+ var k = 1000,
+ dm = decimalPoint || 2,
+ sizes = ["Bytes", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"],
+ i = Math.floor(Math.log(bytes) / Math.log(k));
+ return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + " " + sizes[i];
+ }
+ }
+
+ //goodbye
+
+ let goodbye = function () {
+ document.getElementById("goodbye").style.display = "block";
+ bottom_bar("", "", "");
+
+ if (localStorage.clickcount) {
+ localStorage.clickcount = Number(localStorage.clickcount) + 1;
+ } else {
+ localStorage.clickcount = 1;
+ }
+
+ if (localStorage.clickcount == 300000) {
+ message();
+ } else {
+ document.getElementById("ciao").style.display = "block";
+ setTimeout(function () {
+ window.close();
+ }, 4000);
+ }
+
+ function message() {
+ document.getElementById("donation").style.display = "block";
+ setTimeout(function () {
+ localStorage.clickcount = 1;
+
+ window.close();
+ }, 6000);
+ }
+ };
+
+ //delete file
+ function deleteFile(storage, path, notification) {
+ let sdcard = navigator.getDeviceStorages("sdcard");
+
+ let requestDel = sdcard[storage].delete(path);
+
+ requestDel.onsuccess = function () {
+ if (notification == "notification") {
+ helper.toaster(
+ 'File "' +
+ name +
+ '" successfully deleted frome the sdcard storage area'
+ );
+ }
+ };
+
+ requestDel.onerror = function () {
+ helper.toaster("Unable to delete the file: " + this.error);
+ };
+ }
+
+ return {
+ getManifest,
+ toaster,
+ add_script,
+ deleteFile,
+ goodbye,
+ screenlock,
+ validate,
+ formatFileSize,
+ top_bar,
+ bottom_bar,
+ };
+})();
diff --git a/application/assets/js/mustache.js b/application/assets/js/mustache.js
new file mode 100644
index 00000000..fbfc33d0
--- /dev/null
+++ b/application/assets/js/mustache.js
@@ -0,0 +1,778 @@
+// This file has been generated from mustache.mjs
+(function(global, factory) {
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
+ typeof define === 'function' && define.amd ? define(factory) :
+ (global = global || self, global.Mustache = factory());
+}(this, (function() {
+ 'use strict';
+
+ /*!
+ * mustache.js - Logic-less {{mustache}} templates with JavaScript
+ * http://github.com/janl/mustache.js
+ */
+
+ var objectToString = Object.prototype.toString;
+ var isArray = Array.isArray || function isArrayPolyfill(object) {
+ return objectToString.call(object) === '[object Array]';
+ };
+
+ function isFunction(object) {
+ return typeof object === 'function';
+ }
+
+ /**
+ * More correct typeof string handling array
+ * which normally returns typeof 'object'
+ */
+ function typeStr(obj) {
+ return isArray(obj) ? 'array' : typeof obj;
+ }
+
+ function escapeRegExp(string) {
+ return string.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, '\\$&');
+ }
+
+ /**
+ * Null safe way of checking whether or not an object,
+ * including its prototype, has a given property
+ */
+ function hasProperty(obj, propName) {
+ return obj != null && typeof obj === 'object' && (propName in obj);
+ }
+
+ /**
+ * Safe way of detecting whether or not the given thing is a primitive and
+ * whether it has the given property
+ */
+ function primitiveHasOwnProperty(primitive, propName) {
+ return (
+ primitive != null &&
+ typeof primitive !== 'object' &&
+ primitive.hasOwnProperty &&
+ primitive.hasOwnProperty(propName)
+ );
+ }
+
+ // Workaround for https://issues.apache.org/jira/browse/COUCHDB-577
+ // See https://github.com/janl/mustache.js/issues/189
+ var regExpTest = RegExp.prototype.test;
+
+ function testRegExp(re, string) {
+ return regExpTest.call(re, string);
+ }
+
+ var nonSpaceRe = /\S/;
+
+ function isWhitespace(string) {
+ return !testRegExp(nonSpaceRe, string);
+ }
+
+ var entityMap = {
+ '&': '&',
+ '<': '<',
+ '>': '>',
+ '"': '"',
+ "'": ''',
+ '/': '/',
+ '`': '`',
+ '=': '='
+ };
+
+ function escapeHtml(string) {
+ return String(string).replace(/[&<>"'`=\/]/g, function fromEntityMap(s) {
+ return entityMap[s];
+ });
+ }
+
+ var whiteRe = /\s*/;
+ var spaceRe = /\s+/;
+ var equalsRe = /\s*=/;
+ var curlyRe = /\s*\}/;
+ var tagRe = /#|\^|\/|>|\{|&|=|!/;
+
+ /**
+ * Breaks up the given `template` string into a tree of tokens. If the `tags`
+ * argument is given here it must be an array with two string values: the
+ * opening and closing tags used in the template (e.g. [ "<%", "%>" ]). Of
+ * course, the default is to use mustaches (i.e. mustache.tags).
+ *
+ * A token is an array with at least 4 elements. The first element is the
+ * mustache symbol that was used inside the tag, e.g. "#" or "&". If the tag
+ * did not contain a symbol (i.e. {{myValue}}) this element is "name". For
+ * all text that appears outside a symbol this element is "text".
+ *
+ * The second element of a token is its "value". For mustache tags this is
+ * whatever else was inside the tag besides the opening symbol. For text tokens
+ * this is the text itself.
+ *
+ * The third and fourth elements of the token are the start and end indices,
+ * respectively, of the token in the original template.
+ *
+ * Tokens that are the root node of a subtree contain two more elements: 1) an
+ * array of tokens in the subtree and 2) the index in the original template at
+ * which the closing tag for that section begins.
+ *
+ * Tokens for partials also contain two more elements: 1) a string value of
+ * indendation prior to that tag and 2) the index of that tag on that line -
+ * eg a value of 2 indicates the partial is the third tag on this line.
+ */
+ function parseTemplate(template, tags) {
+ if (!template)
+ return [];
+ var lineHasNonSpace = false;
+ var sections = []; // Stack to hold section tokens
+ var tokens = []; // Buffer to hold the tokens
+ var spaces = []; // Indices of whitespace tokens on the current line
+ var hasTag = false; // Is there a {{tag}} on the current line?
+ var nonSpace = false; // Is there a non-space char on the current line?
+ var indentation = ''; // Tracks indentation for tags that use it
+ var tagIndex = 0; // Stores a count of number of tags encountered on a line
+
+ // Strips all whitespace tokens array for the current line
+ // if there was a {{#tag}} on it and otherwise only space.
+ function stripSpace() {
+ if (hasTag && !nonSpace) {
+ while (spaces.length)
+ delete tokens[spaces.pop()];
+ } else {
+ spaces = [];
+ }
+
+ hasTag = false;
+ nonSpace = false;
+ }
+
+ var openingTagRe, closingTagRe, closingCurlyRe;
+
+ function compileTags(tagsToCompile) {
+ if (typeof tagsToCompile === 'string')
+ tagsToCompile = tagsToCompile.split(spaceRe, 2);
+
+ if (!isArray(tagsToCompile) || tagsToCompile.length !== 2)
+ throw new Error('Invalid tags: ' + tagsToCompile);
+
+ openingTagRe = new RegExp(escapeRegExp(tagsToCompile[0]) + '\\s*');
+ closingTagRe = new RegExp('\\s*' + escapeRegExp(tagsToCompile[1]));
+ closingCurlyRe = new RegExp('\\s*' + escapeRegExp('}' + tagsToCompile[1]));
+ }
+
+ compileTags(tags || mustache.tags);
+
+ var scanner = new Scanner(template);
+
+ var start, type, value, chr, token, openSection;
+ while (!scanner.eos()) {
+ start = scanner.pos;
+
+ // Match any text between tags.
+ value = scanner.scanUntil(openingTagRe);
+
+ if (value) {
+ for (var i = 0, valueLength = value.length; i < valueLength; ++i) {
+ chr = value.charAt(i);
+
+ if (isWhitespace(chr)) {
+ spaces.push(tokens.length);
+ indentation += chr;
+ } else {
+ nonSpace = true;
+ lineHasNonSpace = true;
+ indentation += ' ';
+ }
+
+ tokens.push(['text', chr, start, start + 1]);
+ start += 1;
+
+ // Check for whitespace on the current line.
+ if (chr === '\n') {
+ stripSpace();
+ indentation = '';
+ tagIndex = 0;
+ lineHasNonSpace = false;
+ }
+ }
+ }
+
+ // Match the opening tag.
+ if (!scanner.scan(openingTagRe))
+ break;
+
+ hasTag = true;
+
+ // Get the tag type.
+ type = scanner.scan(tagRe) || 'name';
+ scanner.scan(whiteRe);
+
+ // Get the tag value.
+ if (type === '=') {
+ value = scanner.scanUntil(equalsRe);
+ scanner.scan(equalsRe);
+ scanner.scanUntil(closingTagRe);
+ } else if (type === '{') {
+ value = scanner.scanUntil(closingCurlyRe);
+ scanner.scan(curlyRe);
+ scanner.scanUntil(closingTagRe);
+ type = '&';
+ } else {
+ value = scanner.scanUntil(closingTagRe);
+ }
+
+ // Match the closing tag.
+ if (!scanner.scan(closingTagRe))
+ throw new Error('Unclosed tag at ' + scanner.pos);
+
+ if (type == '>') {
+ token = [type, value, start, scanner.pos, indentation, tagIndex, lineHasNonSpace];
+ } else {
+ token = [type, value, start, scanner.pos];
+ }
+ tagIndex++;
+ tokens.push(token);
+
+ if (type === '#' || type === '^') {
+ sections.push(token);
+ } else if (type === '/') {
+ // Check section nesting.
+ openSection = sections.pop();
+
+ if (!openSection)
+ throw new Error('Unopened section "' + value + '" at ' + start);
+
+ if (openSection[1] !== value)
+ throw new Error('Unclosed section "' + openSection[1] + '" at ' + start);
+ } else if (type === 'name' || type === '{' || type === '&') {
+ nonSpace = true;
+ } else if (type === '=') {
+ // Set the tags for the next time around.
+ compileTags(value);
+ }
+ }
+
+ stripSpace();
+
+ // Make sure there are no open sections when we're done.
+ openSection = sections.pop();
+
+ if (openSection)
+ throw new Error('Unclosed section "' + openSection[1] + '" at ' + scanner.pos);
+
+ return nestTokens(squashTokens(tokens));
+ }
+
+ /**
+ * Combines the values of consecutive text tokens in the given `tokens` array
+ * to a single token.
+ */
+ function squashTokens(tokens) {
+ var squashedTokens = [];
+
+ var token, lastToken;
+ for (var i = 0, numTokens = tokens.length; i < numTokens; ++i) {
+ token = tokens[i];
+
+ if (token) {
+ if (token[0] === 'text' && lastToken && lastToken[0] === 'text') {
+ lastToken[1] += token[1];
+ lastToken[3] = token[3];
+ } else {
+ squashedTokens.push(token);
+ lastToken = token;
+ }
+ }
+ }
+
+ return squashedTokens;
+ }
+
+ /**
+ * Forms the given array of `tokens` into a nested tree structure where
+ * tokens that represent a section have two additional items: 1) an array of
+ * all tokens that appear in that section and 2) the index in the original
+ * template that represents the end of that section.
+ */
+ function nestTokens(tokens) {
+ var nestedTokens = [];
+ var collector = nestedTokens;
+ var sections = [];
+
+ var token, section;
+ for (var i = 0, numTokens = tokens.length; i < numTokens; ++i) {
+ token = tokens[i];
+
+ switch (token[0]) {
+ case '#':
+ case '^':
+ collector.push(token);
+ sections.push(token);
+ collector = token[4] = [];
+ break;
+ case '/':
+ section = sections.pop();
+ section[5] = token[2];
+ collector = sections.length > 0 ? sections[sections.length - 1][4] : nestedTokens;
+ break;
+ default:
+ collector.push(token);
+ }
+ }
+
+ return nestedTokens;
+ }
+
+ /**
+ * A simple string scanner that is used by the template parser to find
+ * tokens in template strings.
+ */
+ function Scanner(string) {
+ this.string = string;
+ this.tail = string;
+ this.pos = 0;
+ }
+
+ /**
+ * Returns `true` if the tail is empty (end of string).
+ */
+ Scanner.prototype.eos = function eos() {
+ return this.tail === '';
+ };
+
+ /**
+ * Tries to match the given regular expression at the current position.
+ * Returns the matched text if it can match, the empty string otherwise.
+ */
+ Scanner.prototype.scan = function scan(re) {
+ var match = this.tail.match(re);
+
+ if (!match || match.index !== 0)
+ return '';
+
+ var string = match[0];
+
+ this.tail = this.tail.substring(string.length);
+ this.pos += string.length;
+
+ return string;
+ };
+
+ /**
+ * Skips all text until the given regular expression can be matched. Returns
+ * the skipped string, which is the entire tail if no match can be made.
+ */
+ Scanner.prototype.scanUntil = function scanUntil(re) {
+ var index = this.tail.search(re),
+ match;
+
+ switch (index) {
+ case -1:
+ match = this.tail;
+ this.tail = '';
+ break;
+ case 0:
+ match = '';
+ break;
+ default:
+ match = this.tail.substring(0, index);
+ this.tail = this.tail.substring(index);
+ }
+
+ this.pos += match.length;
+
+ return match;
+ };
+
+ /**
+ * Represents a rendering context by wrapping a view object and
+ * maintaining a reference to the parent context.
+ */
+ function Context(view, parentContext) {
+ this.view = view;
+ this.cache = {
+ '.': this.view
+ };
+ this.parent = parentContext;
+ }
+
+ /**
+ * Creates a new context using the given view with this context
+ * as the parent.
+ */
+ Context.prototype.push = function push(view) {
+ return new Context(view, this);
+ };
+
+ /**
+ * Returns the value of the given name in this context, traversing
+ * up the context hierarchy if the value is absent in this context's view.
+ */
+ Context.prototype.lookup = function lookup(name) {
+ var cache = this.cache;
+
+ var value;
+ if (cache.hasOwnProperty(name)) {
+ value = cache[name];
+ } else {
+ var context = this,
+ intermediateValue, names, index, lookupHit = false;
+
+ while (context) {
+ if (name.indexOf('.') > 0) {
+ intermediateValue = context.view;
+ names = name.split('.');
+ index = 0;
+
+ /**
+ * Using the dot notion path in `name`, we descend through the
+ * nested objects.
+ *
+ * To be certain that the lookup has been successful, we have to
+ * check if the last object in the path actually has the property
+ * we are looking for. We store the result in `lookupHit`.
+ *
+ * This is specially necessary for when the value has been set to
+ * `undefined` and we want to avoid looking up parent contexts.
+ *
+ * In the case where dot notation is used, we consider the lookup
+ * to be successful even if the last "object" in the path is
+ * not actually an object but a primitive (e.g., a string, or an
+ * integer), because it is sometimes useful to access a property
+ * of an autoboxed primitive, such as the length of a string.
+ **/
+ while (intermediateValue != null && index < names.length) {
+ if (index === names.length - 1)
+ lookupHit = (
+ hasProperty(intermediateValue, names[index]) ||
+ primitiveHasOwnProperty(intermediateValue, names[index])
+ );
+
+ intermediateValue = intermediateValue[names[index++]];
+ }
+ } else {
+ intermediateValue = context.view[name];
+
+ /**
+ * Only checking against `hasProperty`, which always returns `false` if
+ * `context.view` is not an object. Deliberately omitting the check
+ * against `primitiveHasOwnProperty` if dot notation is not used.
+ *
+ * Consider this example:
+ * ```
+ * Mustache.render("The length of a football field is {{#length}}{{length}}{{/length}}.", {length: "100 yards"})
+ * ```
+ *
+ * If we were to check also against `primitiveHasOwnProperty`, as we do
+ * in the dot notation case, then render call would return:
+ *
+ * "The length of a football field is 9."
+ *
+ * rather than the expected:
+ *
+ * "The length of a football field is 100 yards."
+ **/
+ lookupHit = hasProperty(context.view, name);
+ }
+
+ if (lookupHit) {
+ value = intermediateValue;
+ break;
+ }
+
+ context = context.parent;
+ }
+
+ cache[name] = value;
+ }
+
+ if (isFunction(value))
+ value = value.call(this.view);
+
+ return value;
+ };
+
+ /**
+ * A Writer knows how to take a stream of tokens and render them to a
+ * string, given a context. It also maintains a cache of templates to
+ * avoid the need to parse the same template twice.
+ */
+ function Writer() {
+ this.templateCache = {
+ _cache: {},
+ set: function set(key, value) {
+ this._cache[key] = value;
+ },
+ get: function get(key) {
+ return this._cache[key];
+ },
+ clear: function clear() {
+ this._cache = {};
+ }
+ };
+ }
+
+ /**
+ * Clears all cached templates in this writer.
+ */
+ Writer.prototype.clearCache = function clearCache() {
+ if (typeof this.templateCache !== 'undefined') {
+ this.templateCache.clear();
+ }
+ };
+
+ /**
+ * Parses and caches the given `template` according to the given `tags` or
+ * `mustache.tags` if `tags` is omitted, and returns the array of tokens
+ * that is generated from the parse.
+ */
+ Writer.prototype.parse = function parse(template, tags) {
+ var cache = this.templateCache;
+ var cacheKey = template + ':' + (tags || mustache.tags).join(':');
+ var isCacheEnabled = typeof cache !== 'undefined';
+ var tokens = isCacheEnabled ? cache.get(cacheKey) : undefined;
+
+ if (tokens == undefined) {
+ tokens = parseTemplate(template, tags);
+ isCacheEnabled && cache.set(cacheKey, tokens);
+ }
+ return tokens;
+ };
+
+ /**
+ * High-level method that is used to render the given `template` with
+ * the given `view`.
+ *
+ * The optional `partials` argument may be an object that contains the
+ * names and templates of partials that are used in the template. It may
+ * also be a function that is used to load partial templates on the fly
+ * that takes a single argument: the name of the partial.
+ *
+ * If the optional `config` argument is given here, then it should be an
+ * object with a `tags` attribute or an `escape` attribute or both.
+ * If an array is passed, then it will be interpreted the same way as
+ * a `tags` attribute on a `config` object.
+ *
+ * The `tags` attribute of a `config` object must be an array with two
+ * string values: the opening and closing tags used in the template (e.g.
+ * [ "<%", "%>" ]). The default is to mustache.tags.
+ *
+ * The `escape` attribute of a `config` object must be a function which
+ * accepts a string as input and outputs a safely escaped string.
+ * If an `escape` function is not provided, then an HTML-safe string
+ * escaping function is used as the default.
+ */
+ Writer.prototype.render = function render(template, view, partials, config) {
+ var tags = this.getConfigTags(config);
+ var tokens = this.parse(template, tags);
+ var context = (view instanceof Context) ? view : new Context(view, undefined);
+ return this.renderTokens(tokens, context, partials, template, config);
+ };
+
+ /**
+ * Low-level method that renders the given array of `tokens` using
+ * the given `context` and `partials`.
+ *
+ * Note: The `originalTemplate` is only ever used to extract the portion
+ * of the original template that was contained in a higher-order section.
+ * If the template doesn't use higher-order sections, this argument may
+ * be omitted.
+ */
+ Writer.prototype.renderTokens = function renderTokens(tokens, context, partials, originalTemplate, config) {
+ var buffer = '';
+
+ var token, symbol, value;
+ for (var i = 0, numTokens = tokens.length; i < numTokens; ++i) {
+ value = undefined;
+ token = tokens[i];
+ symbol = token[0];
+
+ if (symbol === '#') value = this.renderSection(token, context, partials, originalTemplate, config);
+ else if (symbol === '^') value = this.renderInverted(token, context, partials, originalTemplate, config);
+ else if (symbol === '>') value = this.renderPartial(token, context, partials, config);
+ else if (symbol === '&') value = this.unescapedValue(token, context);
+ else if (symbol === 'name') value = this.escapedValue(token, context, config);
+ else if (symbol === 'text') value = this.rawValue(token);
+
+ if (value !== undefined)
+ buffer += value;
+ }
+
+ return buffer;
+ };
+
+ Writer.prototype.renderSection = function renderSection(token, context, partials, originalTemplate, config) {
+ var self = this;
+ var buffer = '';
+ var value = context.lookup(token[1]);
+
+ // This function is used to render an arbitrary template
+ // in the current context by higher-order sections.
+ function subRender(template) {
+ return self.render(template, context, partials, config);
+ }
+
+ if (!value) return;
+
+ if (isArray(value)) {
+ for (var j = 0, valueLength = value.length; j < valueLength; ++j) {
+ buffer += this.renderTokens(token[4], context.push(value[j]), partials, originalTemplate, config);
+ }
+ } else if (typeof value === 'object' || typeof value === 'string' || typeof value === 'number') {
+ buffer += this.renderTokens(token[4], context.push(value), partials, originalTemplate, config);
+ } else if (isFunction(value)) {
+ if (typeof originalTemplate !== 'string')
+ throw new Error('Cannot use higher-order sections without the original template');
+
+ // Extract the portion of the original template that the section contains.
+ value = value.call(context.view, originalTemplate.slice(token[3], token[5]), subRender);
+
+ if (value != null)
+ buffer += value;
+ } else {
+ buffer += this.renderTokens(token[4], context, partials, originalTemplate, config);
+ }
+ return buffer;
+ };
+
+ Writer.prototype.renderInverted = function renderInverted(token, context, partials, originalTemplate, config) {
+ var value = context.lookup(token[1]);
+
+ // Use JavaScript's definition of falsy. Include empty arrays.
+ // See https://github.com/janl/mustache.js/issues/186
+ if (!value || (isArray(value) && value.length === 0))
+ return this.renderTokens(token[4], context, partials, originalTemplate, config);
+ };
+
+ Writer.prototype.indentPartial = function indentPartial(partial, indentation, lineHasNonSpace) {
+ var filteredIndentation = indentation.replace(/[^ \t]/g, '');
+ var partialByNl = partial.split('\n');
+ for (var i = 0; i < partialByNl.length; i++) {
+ if (partialByNl[i].length && (i > 0 || !lineHasNonSpace)) {
+ partialByNl[i] = filteredIndentation + partialByNl[i];
+ }
+ }
+ return partialByNl.join('\n');
+ };
+
+ Writer.prototype.renderPartial = function renderPartial(token, context, partials, config) {
+ if (!partials) return;
+ var tags = this.getConfigTags(config);
+
+ var value = isFunction(partials) ? partials(token[1]) : partials[token[1]];
+ if (value != null) {
+ var lineHasNonSpace = token[6];
+ var tagIndex = token[5];
+ var indentation = token[4];
+ var indentedValue = value;
+ if (tagIndex == 0 && indentation) {
+ indentedValue = this.indentPartial(value, indentation, lineHasNonSpace);
+ }
+ var tokens = this.parse(indentedValue, tags);
+ return this.renderTokens(tokens, context, partials, indentedValue, config);
+ }
+ };
+
+ Writer.prototype.unescapedValue = function unescapedValue(token, context) {
+ var value = context.lookup(token[1]);
+ if (value != null)
+ return value;
+ };
+
+ Writer.prototype.escapedValue = function escapedValue(token, context, config) {
+ var escape = this.getConfigEscape(config) || mustache.escape;
+ var value = context.lookup(token[1]);
+ if (value != null)
+ return (typeof value === 'number' && escape === mustache.escape) ? String(value) : escape(value);
+ };
+
+ Writer.prototype.rawValue = function rawValue(token) {
+ return token[1];
+ };
+
+ Writer.prototype.getConfigTags = function getConfigTags(config) {
+ if (isArray(config)) {
+ return config;
+ } else if (config && typeof config === 'object') {
+ return config.tags;
+ } else {
+ return undefined;
+ }
+ };
+
+ Writer.prototype.getConfigEscape = function getConfigEscape(config) {
+ if (config && typeof config === 'object' && !isArray(config)) {
+ return config.escape;
+ } else {
+ return undefined;
+ }
+ };
+
+ var mustache = {
+ name: 'mustache.js',
+ version: '4.1.0',
+ tags: ['{{', '}}'],
+ clearCache: undefined,
+ escape: undefined,
+ parse: undefined,
+ render: undefined,
+ Scanner: undefined,
+ Context: undefined,
+ Writer: undefined,
+ /**
+ * Allows a user to override the default caching strategy, by providing an
+ * object with set, get and clear methods. This can also be used to disable
+ * the cache by setting it to the literal `undefined`.
+ */
+ set templateCache(cache) {
+ defaultWriter.templateCache = cache;
+ },
+ /**
+ * Gets the default or overridden caching object from the default writer.
+ */
+ get templateCache() {
+ return defaultWriter.templateCache;
+ }
+ };
+
+ // All high-level mustache.* functions use this writer.
+ var defaultWriter = new Writer();
+
+ /**
+ * Clears all cached templates in the default writer.
+ */
+ mustache.clearCache = function clearCache() {
+ return defaultWriter.clearCache();
+ };
+
+ /**
+ * Parses and caches the given template in the default writer and returns the
+ * array of tokens it contains. Doing this ahead of time avoids the need to
+ * parse templates on the fly as they are rendered.
+ */
+ mustache.parse = function parse(template, tags) {
+ return defaultWriter.parse(template, tags);
+ };
+
+ /**
+ * Renders the `template` with the given `view`, `partials`, and `config`
+ * using the default writer.
+ */
+ mustache.render = function render(template, view, partials, config) {
+ if (typeof template !== 'string') {
+ throw new TypeError('Invalid template! Template should be a "string" ' +
+ 'but "' + typeStr(template) + '" was given as the first ' +
+ 'argument for mustache#render(template, view, partials)');
+ }
+
+ return defaultWriter.render(template, view, partials, config);
+ };
+
+ // Export the escaping function so that the user may override it.
+ // See https://github.com/janl/mustache.js/issues/244
+ mustache.escape = escapeHtml;
+
+ // Export these mainly for testing, but also for advanced usage.
+ mustache.Scanner = Scanner;
+ mustache.Context = Context;
+ mustache.Writer = Writer;
+
+ return mustache;
+
+})));
\ No newline at end of file
diff --git a/application/icons/icon-112-112.png b/application/icons/icon-112-112.png
new file mode 100644
index 00000000..7f19c498
Binary files /dev/null and b/application/icons/icon-112-112.png differ
diff --git a/application/icons/icon-112-112.svg b/application/icons/icon-112-112.svg
new file mode 100644
index 00000000..e5cbd0a4
--- /dev/null
+++ b/application/icons/icon-112-112.svg
@@ -0,0 +1,50 @@
+
+
diff --git a/application/icons/icon-56-56.png b/application/icons/icon-56-56.png
new file mode 100644
index 00000000..62ff6b3c
Binary files /dev/null and b/application/icons/icon-56-56.png differ
diff --git a/application/icons/icon-56-56.svg b/application/icons/icon-56-56.svg
new file mode 100644
index 00000000..eaa31f27
--- /dev/null
+++ b/application/icons/icon-56-56.svg
@@ -0,0 +1,54 @@
+
+
diff --git a/application/icons/intro.svg b/application/icons/intro.svg
new file mode 100644
index 00000000..5028caff
--- /dev/null
+++ b/application/icons/intro.svg
@@ -0,0 +1,2813 @@
+
+
diff --git a/application/index.html b/application/index.html
new file mode 100644
index 00000000..f5952259
--- /dev/null
+++ b/application/index.html
@@ -0,0 +1,155 @@
+
+
+
+
+ greg
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Start Scanning
+
+
+
+
+
+
+
+
+
+
+
Sun
+
Mon
+
Tue
+
Wed
+
Thu
+
Fri
+
Sat
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ please support my work, make a donation
+ paypal.me/strukturart
+ Thank you!
+
+
+ Goodbye
+
+
+
Thank you
+
for using feedolin
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/application/index.js b/application/index.js
new file mode 100644
index 00000000..75defbc4
--- /dev/null
+++ b/application/index.js
@@ -0,0 +1,426 @@
+"use strict";
+
+let status = {
+ view: "month",
+ selected_day: "",
+ visible: "",
+};
+
+let events;
+
+if (localStorage.getItem("events") != null) {
+ events = JSON.parse(localStorage.getItem("events"));
+} else {
+ events = [];
+}
+
+document.addEventListener("DOMContentLoaded", function () {
+ let today = new Date();
+ let currentMonth = today.getMonth();
+ let currentYear = today.getFullYear();
+ let currentDay = today.getDate();
+ //let selectYear = document.getElementById("year");
+ //let selectMonth = document.getElementById("month");
+ let months = [
+ "Jan",
+ "Feb",
+ "Mar",
+ "Apr",
+ "May",
+ "Jun",
+ "Jul",
+ "Aug",
+ "Sep",
+ "Oct",
+ "Nov",
+ "Dec",
+ ];
+
+ let jump_to_today = function () {
+ let currentMonth = today.getMonth();
+ let currentYear = today.getFullYear();
+ showCalendar(currentMonth, currentYear);
+ document.querySelectorAll(".item")[currentDay - 1].focus();
+ document.querySelectorAll(".item")[currentDay - 1].classList.add("today");
+ status.selected_day = document.activeElement.getAttribute("data-date");
+ };
+
+ function next() {
+ currentYear = currentMonth === 11 ? currentYear + 1 : currentYear;
+ currentMonth = (currentMonth + 1) % 12;
+ showCalendar(currentMonth, currentYear);
+ }
+
+ function previous() {
+ currentYear = currentMonth === 0 ? currentYear - 1 : currentYear;
+ currentMonth = currentMonth === 0 ? 11 : currentMonth - 1;
+ showCalendar(currentMonth, currentYear);
+ }
+
+ function jump() {
+ //currentYear = parseInt(selectYear.value);
+ //currentMonth = parseInt(selectMonth.value);
+ showCalendar(currentMonth, currentYear);
+ }
+
+ let event_check = function (date) {
+ let f;
+
+ for (let t = 0; t < events.length; t++) {
+ f = false;
+
+ if (date === events[t].date) {
+ f = true;
+ t = 1000;
+ }
+ }
+ return f;
+ };
+
+ let monthAndYear = document.getElementById("monthAndYear");
+ showCalendar(currentMonth, currentYear);
+ jump_to_today();
+
+ //////////////
+ //BUILD CALENDAR
+ //////////////
+
+ function showCalendar(month, year) {
+ //let month_year = months[month] + " " + year;
+
+ helper.bottom_bar("view", "select", "options");
+
+ let firstDay = new Date(year, month).getDay();
+ let daysInMonth = 32 - new Date(year, month, 32).getDate();
+
+ let tbl = document.getElementById("calendar-body"); // body of the calendar
+
+ // clearing all previous cells
+ tbl.innerHTML = "";
+
+ // filing data about month and in the page via DOM.
+ monthAndYear.innerHTML = months[month] + " " + year;
+ //selectYear.value = year;
+ //selectMonth.value = month;
+
+ // creating all cells
+ let date = 1;
+ for (let i = 0; i < 6; i++) {
+ // creates a table row
+ let row = document.createElement("div");
+ row.classList.add("flex");
+ row.classList.add("width-100");
+
+ //creating individual cells, filing them up with data.
+ for (let j = 0; j < 7; j++) {
+ if (i === 0 && j < firstDay) {
+ let cell = document.createElement("div");
+ let cellText = document.createTextNode("");
+ cell.appendChild(cellText);
+ row.appendChild(cell);
+ } else if (date > daysInMonth) {
+ break;
+ } else {
+ let cell = document.createElement("div");
+ let cellText = document.createTextNode(date);
+ // color today's date
+ cell.appendChild(cellText);
+ cell.setAttribute("tabindex", date - 1);
+ let p = currentYear + "-" + (currentMonth + 1) + "-" + date;
+ cell.setAttribute("data-date", p);
+ if (event_check(p)) {
+ cell.classList.add("event");
+ }
+
+ cell.classList.add("item");
+ row.appendChild(cell);
+ date++;
+ }
+ }
+
+ tbl.appendChild(row);
+ }
+
+ document.querySelectorAll(".item")[0].focus();
+ status.seleted_day = document.activeElement.getAttribute("data-date");
+ console.log(status.selected_day);
+ }
+
+ /////////////////
+ ///NAVIGATION
+ /////////////////
+
+ let nav = function (move) {
+ console.log(console.log(JSON.stringify(status)));
+ const currentIndex = document.activeElement.tabIndex;
+ const next = currentIndex + move;
+ let items;
+
+ if (status.view == "month") {
+ items = document.querySelectorAll(".item");
+ }
+ if (status.view == "add-edit-event" || status.view == "list-view") {
+ if (
+ document.activeElement.parentNode.classList.contains("input-parent")
+ ) {
+ document.activeElement.parentNode.focus();
+ }
+
+ let b = document.activeElement.parentNode;
+ items = b.querySelectorAll(".item");
+ }
+
+ const targetElement = items[next];
+ targetElement.focus();
+
+ if (status.view == "month") {
+ status.selected_day = targetElement.getAttribute("data-date");
+ }
+ console.log(status.selected_day);
+ };
+
+ ///////////////
+ //STORE EVENTS//
+ ///////////////
+
+ let store_event = function () {
+ let event = {
+ id: today.getTime() / 1000,
+ title: document.getElementById("event-title").value,
+ date: document.getElementById("event-date").value,
+ time: document.getElementById("event-time").value,
+ description: document.getElementById("event-description").value,
+ };
+
+ events.push(event);
+ localStorage.setItem("events", JSON.stringify(events));
+ status.view = "month";
+ router();
+ };
+
+ let set_tabindex = function () {
+ document.querySelectorAll("article").forEach(function (i, p) {
+ i.setAttribute("tabindex", p);
+ });
+ };
+
+ ////////////////////
+ ////BUILD EVENT-LIST
+ ///////////////////
+
+ function renderHello(arr) {
+ var template = document.getElementById("template").innerHTML;
+ var rendered = Mustache.render(template, {
+ data: arr,
+ });
+ document.getElementById("list-view").innerHTML = rendered;
+ set_tabindex();
+ }
+
+ renderHello(events);
+
+ ///////////////////
+ ///ROUTER
+ /////////////////
+
+ const month = document.getElementById("calendar");
+ const add_edit_event = document.getElementById("add-edit-event");
+ const list_view = document.getElementById("list-view");
+
+ const pages = document.querySelectorAll(".page");
+
+ let router = function (view) {
+ pages.forEach(function (index) {
+ index.style.display = "none";
+ });
+
+ if (view == "view") {
+ if (status.view == "month") {
+ status.view = "list-view";
+ } else {
+ status.view = "month";
+ }
+ }
+
+ if (status.view == "add-edit-event") {
+ document.getElementById(
+ "event-date"
+ ).value = document.activeElement.getAttribute("data-date");
+ add_edit_event.style.display = "block";
+ add_edit_event.querySelectorAll(".item")[0].focus();
+ helper.bottom_bar("", "edit", "");
+ return true;
+ }
+
+ if (status.view == "month") {
+ month.style.display = "block";
+ }
+ if (status.view == "list-view") {
+ console.log(status.selected_day);
+
+ list_view.style.display = "block";
+ renderHello(events);
+
+ document.querySelectorAll("[data-fdate]").forEach(function (e) {
+ if (e.getAttribute("data-fdate") == status.selected_day) {
+ e.focus();
+ }
+ });
+ }
+ };
+
+ //////////////////////////////
+ ////KEYPAD HANDLER////////////
+ //////////////////////////////
+
+ let longpress = false;
+ const longpress_timespan = 1000;
+ let timeout;
+
+ function repeat_action(param) {
+ switch (param.key) {
+ case "0":
+ break;
+ }
+ }
+
+ //////////////
+ ////LONGPRESS
+ /////////////
+
+ function longpress_action(param) {
+ switch (param.key) {
+ case "0":
+ break;
+ }
+ }
+
+ ///////////////
+ ////SHORTPRESS
+ //////////////
+
+ function shortpress_action(param) {
+ switch (param.key) {
+ case "*":
+ jump_to_today();
+
+ break;
+
+ case "ArrowUp":
+ if (status.view == "month") {
+ nav(-7);
+ }
+ if (status.view == "add-edit-event" || status.view == "list-view") {
+ nav(-1);
+ }
+ break;
+ case "ArrowDown":
+ if (status.view == "month") {
+ nav(+7);
+ }
+ if (status.view == "add-edit-event" || status.view == "list-view") {
+ nav(+1);
+ }
+
+ break;
+ case "ArrowRight":
+ nav(1);
+ break;
+ case "ArrowLeft":
+ nav(-1);
+ break;
+
+ case "1":
+ previous();
+ break;
+ case "3":
+ next();
+ break;
+
+ case "SoftLeft":
+ case "Control":
+ router("view");
+ break;
+
+ case "Enter":
+ if (document.activeElement.classList.contains("input-parent")) {
+ document.activeElement.children[1].focus();
+ return true;
+ }
+ if (status.view == "month") {
+ status.view = "add-edit-event";
+ router();
+ }
+
+ if (document.activeElement.id == "save-event") {
+ store_event();
+ }
+ break;
+
+ case "Backspace":
+ if (status.view == "add-edit-event") {
+ status.view = "month";
+ router();
+ }
+
+ break;
+ }
+ }
+
+ /////////////////////////////////
+ ////shortpress / longpress logic
+ ////////////////////////////////
+
+ function handleKeyDown(evt) {
+ if (evt.key === "Backspace") {
+ evt.preventDefault();
+ }
+
+ if (evt.key === "EndCall") {
+ evt.preventDefault();
+ helper.goodbye();
+ }
+ if (!evt.repeat) {
+ longpress = false;
+ timeout = setTimeout(() => {
+ longpress = true;
+ longpress_action(evt);
+ }, longpress_timespan);
+ }
+
+ if (evt.repeat) {
+ if (evt.key == "Backspace") evt.preventDefault(); // Disable close app by holding backspace
+
+ longpress = false;
+ repeat_action(evt);
+ }
+ }
+
+ function handleKeyUp(evt) {
+ evt.preventDefault();
+
+ if (evt.key == "Backspace") evt.preventDefault(); // Disable close app by holding backspace
+
+ if (
+ evt.key == "Backspace" &&
+ status.window_status != "article-list" &&
+ document.activeElement.tagName == "INPUT"
+ ) {
+ evt.preventDefault();
+ }
+
+ clearTimeout(timeout);
+ if (!longpress) {
+ shortpress_action(evt);
+ }
+ }
+
+ document.addEventListener("keydown", handleKeyDown);
+ document.addEventListener("keyup", handleKeyUp);
+
+ document.addEventListener("visibilitychange", function () {
+ setTimeout(function () {
+ status.visible = document.visibilityState;
+ }, 1000);
+ });
+});
diff --git a/application/manifest.webapp b/application/manifest.webapp
new file mode 100644
index 00000000..92a409fa
--- /dev/null
+++ b/application/manifest.webapp
@@ -0,0 +1,83 @@
+{
+ "version": "1.1.0",
+ "name": "pingoi",
+ "description": "pingoi",
+ "launch_path": "/index.html",
+ "type": "privileged",
+ "fullscreen": "true",
+
+
+
+ "icons": {
+ "56": "/icons/icon-56-56.png",
+ "112": "/icons/icon-112-112.png"
+ },
+
+ "developer":
+ {
+ "name": "strukturart",
+ "url": "https://strukturart.com"
+ },
+
+
+ "dependencies": {
+ "ads-sdk": "1.5.0"
+ },
+
+ "locales": {
+ "en-US": {
+ "name": "pingoi",
+ "subtitle": "pingoi",
+ "description": "pingoi"
+ }
+ },
+ "default_locale": "en-US",
+
+
+
+ "permissions":
+ {
+ "mobiledata": {},
+ "wifidata": {},
+ "calllog": {},
+
+ "device-storage:sdcard": {
+ "description": "Read/Write from/to sd-card",
+ "access": "readwrite"
+ },
+
+ "video-capture": {
+ "description": "Reading Codes using the Camera"
+ },
+
+
+ "audio-channel-normal" : {
+ "description" : "Needed to play this app's audio content on the normal channel"
+ },
+ "audio-channel-content" : {
+ "description" : "Needed to play this app's audio content on the content channel"
+ },
+ "desktop-notification" : {
+ "description" : "Needed to fire system notifications"
+ },
+
+ "volumemanager":{},
+ "browser": {},
+ "spatialnavigation-app-manage": {
+ "navigator.spatialNavigationEnabled": false
+ },
+
+ "systemXHR": {
+ "description": "Required to load remote content"
+ }
+
+
+
+
+ }
+
+
+
+
+
+}
diff --git a/build/greg-omnisd.zip b/build/greg-omnisd.zip
new file mode 100755
index 00000000..fb78008d
Binary files /dev/null and b/build/greg-omnisd.zip differ
diff --git a/build/greg.zip b/build/greg.zip
new file mode 100644
index 00000000..56769f43
Binary files /dev/null and b/build/greg.zip differ
diff --git a/images/bitcoin_rcv.png b/images/bitcoin_rcv.png
new file mode 100644
index 00000000..8ae52bd0
Binary files /dev/null and b/images/bitcoin_rcv.png differ
diff --git a/images/helper.svg b/images/helper.svg
new file mode 100644
index 00000000..cc45399e
--- /dev/null
+++ b/images/helper.svg
@@ -0,0 +1,177 @@
+
+
+
+
diff --git a/images/image-1.png b/images/image-1.png
new file mode 100755
index 00000000..d757706c
Binary files /dev/null and b/images/image-1.png differ
diff --git a/images/image-2.png b/images/image-2.png
new file mode 100755
index 00000000..f6cc51a1
Binary files /dev/null and b/images/image-2.png differ
diff --git a/images/image-3.png b/images/image-3.png
new file mode 100755
index 00000000..280c1476
Binary files /dev/null and b/images/image-3.png differ
diff --git a/images/image-4.png b/images/image-4.png
new file mode 100755
index 00000000..b604fa2d
Binary files /dev/null and b/images/image-4.png differ
diff --git a/images/image-5.png b/images/image-5.png
new file mode 100644
index 00000000..e5fc5408
Binary files /dev/null and b/images/image-5.png differ
diff --git a/images/image-6.png b/images/image-6.png
new file mode 100755
index 00000000..775db424
Binary files /dev/null and b/images/image-6.png differ
diff --git a/images/kaios-marketing-banner.png b/images/kaios-marketing-banner.png
new file mode 100644
index 00000000..2ea0bf33
Binary files /dev/null and b/images/kaios-marketing-banner.png differ
diff --git a/images/logo.svg b/images/logo.svg
new file mode 100644
index 00000000..5a3ddf3e
--- /dev/null
+++ b/images/logo.svg
@@ -0,0 +1,2820 @@
+
+
diff --git a/images/paypal.png b/images/paypal.png
new file mode 100644
index 00000000..3a6eb7fc
Binary files /dev/null and b/images/paypal.png differ
diff --git a/images/views.png b/images/views.png
new file mode 100644
index 00000000..b2d6a203
Binary files /dev/null and b/images/views.png differ