diff --git a/composer.json b/composer.json
index 6942229..8c8dbea 100644
--- a/composer.json
+++ b/composer.json
@@ -56,7 +56,8 @@
"scripts": {
"auto-scripts": {
"cache:clear": "symfony-cmd",
- "assets:install --symlink --relative %PUBLIC_DIR%": "symfony-cmd"
+ "assets:install --symlink --relative %PUBLIC_DIR%": "symfony-cmd",
+ "assets:install %PUBLIC_DIR%": "symfony-cmd"
},
"post-install-cmd": [
"@auto-scripts"
diff --git a/public/theme/.babelrc b/contrib/theme/.babelrc
similarity index 100%
rename from public/theme/.babelrc
rename to contrib/theme/.babelrc
diff --git a/public/theme/.editorconfig b/contrib/theme/.editorconfig
similarity index 100%
rename from public/theme/.editorconfig
rename to contrib/theme/.editorconfig
diff --git a/public/theme/.eslintignore b/contrib/theme/.eslintignore
similarity index 100%
rename from public/theme/.eslintignore
rename to contrib/theme/.eslintignore
diff --git a/public/theme/.eslintrc.js b/contrib/theme/.eslintrc.js
similarity index 100%
rename from public/theme/.eslintrc.js
rename to contrib/theme/.eslintrc.js
diff --git a/public/theme/.gitignore b/contrib/theme/.gitignore
similarity index 100%
rename from public/theme/.gitignore
rename to contrib/theme/.gitignore
diff --git a/public/theme/.postcssrc.js b/contrib/theme/.postcssrc.js
similarity index 100%
rename from public/theme/.postcssrc.js
rename to contrib/theme/.postcssrc.js
diff --git a/public/theme/LICENSE b/contrib/theme/LICENSE
similarity index 100%
rename from public/theme/LICENSE
rename to contrib/theme/LICENSE
diff --git a/public/theme/README.md b/contrib/theme/README.md
similarity index 100%
rename from public/theme/README.md
rename to contrib/theme/README.md
diff --git a/public/theme/build/build.js b/contrib/theme/build/build.js
similarity index 100%
rename from public/theme/build/build.js
rename to contrib/theme/build/build.js
diff --git a/public/theme/build/check-versions.js b/contrib/theme/build/check-versions.js
similarity index 100%
rename from public/theme/build/check-versions.js
rename to contrib/theme/build/check-versions.js
diff --git a/public/theme/build/dev-client.js b/contrib/theme/build/dev-client.js
similarity index 100%
rename from public/theme/build/dev-client.js
rename to contrib/theme/build/dev-client.js
diff --git a/public/theme/build/dev-server.js b/contrib/theme/build/dev-server.js
similarity index 100%
rename from public/theme/build/dev-server.js
rename to contrib/theme/build/dev-server.js
diff --git a/public/theme/build/utils.js b/contrib/theme/build/utils.js
similarity index 100%
rename from public/theme/build/utils.js
rename to contrib/theme/build/utils.js
diff --git a/public/theme/build/vue-loader.conf.js b/contrib/theme/build/vue-loader.conf.js
similarity index 100%
rename from public/theme/build/vue-loader.conf.js
rename to contrib/theme/build/vue-loader.conf.js
diff --git a/public/theme/build/webpack.base.conf.js b/contrib/theme/build/webpack.base.conf.js
similarity index 100%
rename from public/theme/build/webpack.base.conf.js
rename to contrib/theme/build/webpack.base.conf.js
diff --git a/public/theme/build/webpack.custom.js b/contrib/theme/build/webpack.custom.js
similarity index 100%
rename from public/theme/build/webpack.custom.js
rename to contrib/theme/build/webpack.custom.js
diff --git a/public/theme/build/webpack.dev.conf.js b/contrib/theme/build/webpack.dev.conf.js
similarity index 100%
rename from public/theme/build/webpack.dev.conf.js
rename to contrib/theme/build/webpack.dev.conf.js
diff --git a/public/theme/build/webpack.prod.conf.js b/contrib/theme/build/webpack.prod.conf.js
similarity index 100%
rename from public/theme/build/webpack.prod.conf.js
rename to contrib/theme/build/webpack.prod.conf.js
diff --git a/public/theme/build/webpack.test.conf.js b/contrib/theme/build/webpack.test.conf.js
similarity index 100%
rename from public/theme/build/webpack.test.conf.js
rename to contrib/theme/build/webpack.test.conf.js
diff --git a/public/theme/config/dev.env.js b/contrib/theme/config/dev.env.js
similarity index 100%
rename from public/theme/config/dev.env.js
rename to contrib/theme/config/dev.env.js
diff --git a/public/theme/config/index.js b/contrib/theme/config/index.js
similarity index 100%
rename from public/theme/config/index.js
rename to contrib/theme/config/index.js
diff --git a/public/theme/config/prod.env.js b/contrib/theme/config/prod.env.js
similarity index 100%
rename from public/theme/config/prod.env.js
rename to contrib/theme/config/prod.env.js
diff --git a/public/theme/config/test.env.js b/contrib/theme/config/test.env.js
similarity index 100%
rename from public/theme/config/test.env.js
rename to contrib/theme/config/test.env.js
diff --git a/public/theme/index.html b/contrib/theme/index.html
similarity index 100%
rename from public/theme/index.html
rename to contrib/theme/index.html
diff --git a/public/theme/package-lock.json b/contrib/theme/package-lock.json
similarity index 100%
rename from public/theme/package-lock.json
rename to contrib/theme/package-lock.json
diff --git a/public/theme/package.json b/contrib/theme/package.json
similarity index 100%
rename from public/theme/package.json
rename to contrib/theme/package.json
diff --git a/public/theme/src/App.vue b/contrib/theme/src/App.vue
similarity index 100%
rename from public/theme/src/App.vue
rename to contrib/theme/src/App.vue
diff --git a/public/theme/src/assets/css/demo.css b/contrib/theme/src/assets/css/demo.css
similarity index 100%
rename from public/theme/src/assets/css/demo.css
rename to contrib/theme/src/assets/css/demo.css
diff --git a/public/theme/src/assets/sass/lbd/_alerts.scss b/contrib/theme/src/assets/sass/lbd/_alerts.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_alerts.scss
rename to contrib/theme/src/assets/sass/lbd/_alerts.scss
diff --git a/public/theme/src/assets/sass/lbd/_buttons.scss b/contrib/theme/src/assets/sass/lbd/_buttons.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_buttons.scss
rename to contrib/theme/src/assets/sass/lbd/_buttons.scss
diff --git a/public/theme/src/assets/sass/lbd/_cards.scss b/contrib/theme/src/assets/sass/lbd/_cards.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_cards.scss
rename to contrib/theme/src/assets/sass/lbd/_cards.scss
diff --git a/public/theme/src/assets/sass/lbd/_chartist.scss b/contrib/theme/src/assets/sass/lbd/_chartist.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_chartist.scss
rename to contrib/theme/src/assets/sass/lbd/_chartist.scss
diff --git a/public/theme/src/assets/sass/lbd/_checkbox-radio-switch.scss b/contrib/theme/src/assets/sass/lbd/_checkbox-radio-switch.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_checkbox-radio-switch.scss
rename to contrib/theme/src/assets/sass/lbd/_checkbox-radio-switch.scss
diff --git a/public/theme/src/assets/sass/lbd/_dropdown.scss b/contrib/theme/src/assets/sass/lbd/_dropdown.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_dropdown.scss
rename to contrib/theme/src/assets/sass/lbd/_dropdown.scss
diff --git a/public/theme/src/assets/sass/lbd/_footers.scss b/contrib/theme/src/assets/sass/lbd/_footers.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_footers.scss
rename to contrib/theme/src/assets/sass/lbd/_footers.scss
diff --git a/public/theme/src/assets/sass/lbd/_inputs.scss b/contrib/theme/src/assets/sass/lbd/_inputs.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_inputs.scss
rename to contrib/theme/src/assets/sass/lbd/_inputs.scss
diff --git a/public/theme/src/assets/sass/lbd/_misc.scss b/contrib/theme/src/assets/sass/lbd/_misc.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_misc.scss
rename to contrib/theme/src/assets/sass/lbd/_misc.scss
diff --git a/public/theme/src/assets/sass/lbd/_mixins.scss b/contrib/theme/src/assets/sass/lbd/_mixins.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_mixins.scss
rename to contrib/theme/src/assets/sass/lbd/_mixins.scss
diff --git a/public/theme/src/assets/sass/lbd/_modal.scss b/contrib/theme/src/assets/sass/lbd/_modal.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_modal.scss
rename to contrib/theme/src/assets/sass/lbd/_modal.scss
diff --git a/public/theme/src/assets/sass/lbd/_navbars.scss b/contrib/theme/src/assets/sass/lbd/_navbars.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_navbars.scss
rename to contrib/theme/src/assets/sass/lbd/_navbars.scss
diff --git a/public/theme/src/assets/sass/lbd/_partial-nucleo-icons.scss b/contrib/theme/src/assets/sass/lbd/_partial-nucleo-icons.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_partial-nucleo-icons.scss
rename to contrib/theme/src/assets/sass/lbd/_partial-nucleo-icons.scss
diff --git a/public/theme/src/assets/sass/lbd/_responsive.scss b/contrib/theme/src/assets/sass/lbd/_responsive.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_responsive.scss
rename to contrib/theme/src/assets/sass/lbd/_responsive.scss
diff --git a/public/theme/src/assets/sass/lbd/_sidebar-and-main-panel.scss b/contrib/theme/src/assets/sass/lbd/_sidebar-and-main-panel.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_sidebar-and-main-panel.scss
rename to contrib/theme/src/assets/sass/lbd/_sidebar-and-main-panel.scss
diff --git a/public/theme/src/assets/sass/lbd/_tables.scss b/contrib/theme/src/assets/sass/lbd/_tables.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_tables.scss
rename to contrib/theme/src/assets/sass/lbd/_tables.scss
diff --git a/public/theme/src/assets/sass/lbd/_tooltip.scss b/contrib/theme/src/assets/sass/lbd/_tooltip.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_tooltip.scss
rename to contrib/theme/src/assets/sass/lbd/_tooltip.scss
diff --git a/public/theme/src/assets/sass/lbd/_typography.scss b/contrib/theme/src/assets/sass/lbd/_typography.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_typography.scss
rename to contrib/theme/src/assets/sass/lbd/_typography.scss
diff --git a/public/theme/src/assets/sass/lbd/_variables.scss b/contrib/theme/src/assets/sass/lbd/_variables.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/_variables.scss
rename to contrib/theme/src/assets/sass/lbd/_variables.scss
diff --git a/public/theme/src/assets/sass/lbd/mixins/_buttons.scss b/contrib/theme/src/assets/sass/lbd/mixins/_buttons.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/mixins/_buttons.scss
rename to contrib/theme/src/assets/sass/lbd/mixins/_buttons.scss
diff --git a/public/theme/src/assets/sass/lbd/mixins/_cards.scss b/contrib/theme/src/assets/sass/lbd/mixins/_cards.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/mixins/_cards.scss
rename to contrib/theme/src/assets/sass/lbd/mixins/_cards.scss
diff --git a/public/theme/src/assets/sass/lbd/mixins/_chartist.scss b/contrib/theme/src/assets/sass/lbd/mixins/_chartist.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/mixins/_chartist.scss
rename to contrib/theme/src/assets/sass/lbd/mixins/_chartist.scss
diff --git a/public/theme/src/assets/sass/lbd/mixins/_icons.scss b/contrib/theme/src/assets/sass/lbd/mixins/_icons.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/mixins/_icons.scss
rename to contrib/theme/src/assets/sass/lbd/mixins/_icons.scss
diff --git a/public/theme/src/assets/sass/lbd/mixins/_inputs.scss b/contrib/theme/src/assets/sass/lbd/mixins/_inputs.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/mixins/_inputs.scss
rename to contrib/theme/src/assets/sass/lbd/mixins/_inputs.scss
diff --git a/public/theme/src/assets/sass/lbd/mixins/_labels.scss b/contrib/theme/src/assets/sass/lbd/mixins/_labels.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/mixins/_labels.scss
rename to contrib/theme/src/assets/sass/lbd/mixins/_labels.scss
diff --git a/public/theme/src/assets/sass/lbd/mixins/_morphing-buttons.scss b/contrib/theme/src/assets/sass/lbd/mixins/_morphing-buttons.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/mixins/_morphing-buttons.scss
rename to contrib/theme/src/assets/sass/lbd/mixins/_morphing-buttons.scss
diff --git a/public/theme/src/assets/sass/lbd/mixins/_navbars.scss b/contrib/theme/src/assets/sass/lbd/mixins/_navbars.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/mixins/_navbars.scss
rename to contrib/theme/src/assets/sass/lbd/mixins/_navbars.scss
diff --git a/public/theme/src/assets/sass/lbd/mixins/_social-buttons.scss b/contrib/theme/src/assets/sass/lbd/mixins/_social-buttons.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/mixins/_social-buttons.scss
rename to contrib/theme/src/assets/sass/lbd/mixins/_social-buttons.scss
diff --git a/public/theme/src/assets/sass/lbd/mixins/_tabs.scss b/contrib/theme/src/assets/sass/lbd/mixins/_tabs.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/mixins/_tabs.scss
rename to contrib/theme/src/assets/sass/lbd/mixins/_tabs.scss
diff --git a/public/theme/src/assets/sass/lbd/mixins/_transparency.scss b/contrib/theme/src/assets/sass/lbd/mixins/_transparency.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/mixins/_transparency.scss
rename to contrib/theme/src/assets/sass/lbd/mixins/_transparency.scss
diff --git a/public/theme/src/assets/sass/lbd/mixins/_vendor-prefixes.scss b/contrib/theme/src/assets/sass/lbd/mixins/_vendor-prefixes.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/mixins/_vendor-prefixes.scss
rename to contrib/theme/src/assets/sass/lbd/mixins/_vendor-prefixes.scss
diff --git a/public/theme/src/assets/sass/lbd/plugins/_animate.scss b/contrib/theme/src/assets/sass/lbd/plugins/_animate.scss
similarity index 100%
rename from public/theme/src/assets/sass/lbd/plugins/_animate.scss
rename to contrib/theme/src/assets/sass/lbd/plugins/_animate.scss
diff --git a/public/theme/src/assets/sass/light-bootstrap-dashboard.scss b/contrib/theme/src/assets/sass/light-bootstrap-dashboard.scss
similarity index 100%
rename from public/theme/src/assets/sass/light-bootstrap-dashboard.scss
rename to contrib/theme/src/assets/sass/light-bootstrap-dashboard.scss
diff --git a/public/theme/src/components/Dashboard/Layout/Content.vue b/contrib/theme/src/components/Dashboard/Layout/Content.vue
similarity index 100%
rename from public/theme/src/components/Dashboard/Layout/Content.vue
rename to contrib/theme/src/components/Dashboard/Layout/Content.vue
diff --git a/public/theme/src/components/Dashboard/Layout/ContentFooter.vue b/contrib/theme/src/components/Dashboard/Layout/ContentFooter.vue
similarity index 100%
rename from public/theme/src/components/Dashboard/Layout/ContentFooter.vue
rename to contrib/theme/src/components/Dashboard/Layout/ContentFooter.vue
diff --git a/public/theme/src/components/Dashboard/Layout/DashboardLayout.vue b/contrib/theme/src/components/Dashboard/Layout/DashboardLayout.vue
similarity index 100%
rename from public/theme/src/components/Dashboard/Layout/DashboardLayout.vue
rename to contrib/theme/src/components/Dashboard/Layout/DashboardLayout.vue
diff --git a/public/theme/src/components/Dashboard/Layout/TopNavbar.vue b/contrib/theme/src/components/Dashboard/Layout/TopNavbar.vue
similarity index 100%
rename from public/theme/src/components/Dashboard/Layout/TopNavbar.vue
rename to contrib/theme/src/components/Dashboard/Layout/TopNavbar.vue
diff --git a/public/theme/src/components/Dashboard/Views/Icons.vue b/contrib/theme/src/components/Dashboard/Views/Icons.vue
similarity index 100%
rename from public/theme/src/components/Dashboard/Views/Icons.vue
rename to contrib/theme/src/components/Dashboard/Views/Icons.vue
diff --git a/public/theme/src/components/Dashboard/Views/Maps.vue b/contrib/theme/src/components/Dashboard/Views/Maps.vue
similarity index 100%
rename from public/theme/src/components/Dashboard/Views/Maps.vue
rename to contrib/theme/src/components/Dashboard/Views/Maps.vue
diff --git a/public/theme/src/components/Dashboard/Views/Maps/API_KEY.js b/contrib/theme/src/components/Dashboard/Views/Maps/API_KEY.js
similarity index 100%
rename from public/theme/src/components/Dashboard/Views/Maps/API_KEY.js
rename to contrib/theme/src/components/Dashboard/Views/Maps/API_KEY.js
diff --git a/public/theme/src/components/Dashboard/Views/Notifications.vue b/contrib/theme/src/components/Dashboard/Views/Notifications.vue
similarity index 100%
rename from public/theme/src/components/Dashboard/Views/Notifications.vue
rename to contrib/theme/src/components/Dashboard/Views/Notifications.vue
diff --git a/public/theme/src/components/Dashboard/Views/Overview.vue b/contrib/theme/src/components/Dashboard/Views/Overview.vue
similarity index 100%
rename from public/theme/src/components/Dashboard/Views/Overview.vue
rename to contrib/theme/src/components/Dashboard/Views/Overview.vue
diff --git a/public/theme/src/components/Dashboard/Views/TableList.vue b/contrib/theme/src/components/Dashboard/Views/TableList.vue
similarity index 100%
rename from public/theme/src/components/Dashboard/Views/TableList.vue
rename to contrib/theme/src/components/Dashboard/Views/TableList.vue
diff --git a/public/theme/src/components/Dashboard/Views/Typography.vue b/contrib/theme/src/components/Dashboard/Views/Typography.vue
similarity index 100%
rename from public/theme/src/components/Dashboard/Views/Typography.vue
rename to contrib/theme/src/components/Dashboard/Views/Typography.vue
diff --git a/public/theme/src/components/Dashboard/Views/UserProfile.vue b/contrib/theme/src/components/Dashboard/Views/UserProfile.vue
similarity index 100%
rename from public/theme/src/components/Dashboard/Views/UserProfile.vue
rename to contrib/theme/src/components/Dashboard/Views/UserProfile.vue
diff --git a/public/theme/src/components/Dashboard/Views/UserProfile/EditProfileForm.vue b/contrib/theme/src/components/Dashboard/Views/UserProfile/EditProfileForm.vue
similarity index 100%
rename from public/theme/src/components/Dashboard/Views/UserProfile/EditProfileForm.vue
rename to contrib/theme/src/components/Dashboard/Views/UserProfile/EditProfileForm.vue
diff --git a/public/theme/src/components/Dashboard/Views/UserProfile/UserCard.vue b/contrib/theme/src/components/Dashboard/Views/UserProfile/UserCard.vue
similarity index 100%
rename from public/theme/src/components/Dashboard/Views/UserProfile/UserCard.vue
rename to contrib/theme/src/components/Dashboard/Views/UserProfile/UserCard.vue
diff --git a/public/theme/src/components/GeneralViews/NotFoundPage.vue b/contrib/theme/src/components/GeneralViews/NotFoundPage.vue
similarity index 100%
rename from public/theme/src/components/GeneralViews/NotFoundPage.vue
rename to contrib/theme/src/components/GeneralViews/NotFoundPage.vue
diff --git a/public/theme/src/components/ReCast/AccountSettings.vue b/contrib/theme/src/components/ReCast/AccountSettings.vue
similarity index 100%
rename from public/theme/src/components/ReCast/AccountSettings.vue
rename to contrib/theme/src/components/ReCast/AccountSettings.vue
diff --git a/public/theme/src/components/ReCast/Endpoints/EditEndpoint.vue b/contrib/theme/src/components/ReCast/Endpoints/EditEndpoint.vue
similarity index 100%
rename from public/theme/src/components/ReCast/Endpoints/EditEndpoint.vue
rename to contrib/theme/src/components/ReCast/Endpoints/EditEndpoint.vue
diff --git a/public/theme/src/components/ReCast/Login.vue b/contrib/theme/src/components/ReCast/Login.vue
similarity index 100%
rename from public/theme/src/components/ReCast/Login.vue
rename to contrib/theme/src/components/ReCast/Login.vue
diff --git a/public/theme/src/components/ReCast/Overview.vue b/contrib/theme/src/components/ReCast/Overview.vue
similarity index 100%
rename from public/theme/src/components/ReCast/Overview.vue
rename to contrib/theme/src/components/ReCast/Overview.vue
diff --git a/public/theme/src/components/ReCast/Streams/EditStream.vue b/contrib/theme/src/components/ReCast/Streams/EditStream.vue
similarity index 100%
rename from public/theme/src/components/ReCast/Streams/EditStream.vue
rename to contrib/theme/src/components/ReCast/Streams/EditStream.vue
diff --git a/public/theme/src/components/ReCast/Streams/List.vue b/contrib/theme/src/components/ReCast/Streams/List.vue
similarity index 100%
rename from public/theme/src/components/ReCast/Streams/List.vue
rename to contrib/theme/src/components/ReCast/Streams/List.vue
diff --git a/public/theme/src/components/ReCast/Streams/SetupStream.vue b/contrib/theme/src/components/ReCast/Streams/SetupStream.vue
similarity index 100%
rename from public/theme/src/components/ReCast/Streams/SetupStream.vue
rename to contrib/theme/src/components/ReCast/Streams/SetupStream.vue
diff --git a/public/theme/src/components/UIComponents/Cards/Card.vue b/contrib/theme/src/components/UIComponents/Cards/Card.vue
similarity index 100%
rename from public/theme/src/components/UIComponents/Cards/Card.vue
rename to contrib/theme/src/components/UIComponents/Cards/Card.vue
diff --git a/public/theme/src/components/UIComponents/Cards/ChartCard.vue b/contrib/theme/src/components/UIComponents/Cards/ChartCard.vue
similarity index 100%
rename from public/theme/src/components/UIComponents/Cards/ChartCard.vue
rename to contrib/theme/src/components/UIComponents/Cards/ChartCard.vue
diff --git a/public/theme/src/components/UIComponents/Cards/StatsCard.vue b/contrib/theme/src/components/UIComponents/Cards/StatsCard.vue
similarity index 100%
rename from public/theme/src/components/UIComponents/Cards/StatsCard.vue
rename to contrib/theme/src/components/UIComponents/Cards/StatsCard.vue
diff --git a/public/theme/src/components/UIComponents/Dropdown.vue b/contrib/theme/src/components/UIComponents/Dropdown.vue
similarity index 100%
rename from public/theme/src/components/UIComponents/Dropdown.vue
rename to contrib/theme/src/components/UIComponents/Dropdown.vue
diff --git a/public/theme/src/components/UIComponents/Inputs/Checkbox.vue b/contrib/theme/src/components/UIComponents/Inputs/Checkbox.vue
similarity index 100%
rename from public/theme/src/components/UIComponents/Inputs/Checkbox.vue
rename to contrib/theme/src/components/UIComponents/Inputs/Checkbox.vue
diff --git a/public/theme/src/components/UIComponents/Inputs/Radio.vue b/contrib/theme/src/components/UIComponents/Inputs/Radio.vue
similarity index 100%
rename from public/theme/src/components/UIComponents/Inputs/Radio.vue
rename to contrib/theme/src/components/UIComponents/Inputs/Radio.vue
diff --git a/public/theme/src/components/UIComponents/Inputs/formGroupInput.vue b/contrib/theme/src/components/UIComponents/Inputs/formGroupInput.vue
similarity index 100%
rename from public/theme/src/components/UIComponents/Inputs/formGroupInput.vue
rename to contrib/theme/src/components/UIComponents/Inputs/formGroupInput.vue
diff --git a/public/theme/src/components/UIComponents/SidebarPlugin/SideBar.vue b/contrib/theme/src/components/UIComponents/SidebarPlugin/SideBar.vue
similarity index 100%
rename from public/theme/src/components/UIComponents/SidebarPlugin/SideBar.vue
rename to contrib/theme/src/components/UIComponents/SidebarPlugin/SideBar.vue
diff --git a/public/theme/src/components/UIComponents/SidebarPlugin/SidebarLink.vue b/contrib/theme/src/components/UIComponents/SidebarPlugin/SidebarLink.vue
similarity index 100%
rename from public/theme/src/components/UIComponents/SidebarPlugin/SidebarLink.vue
rename to contrib/theme/src/components/UIComponents/SidebarPlugin/SidebarLink.vue
diff --git a/public/theme/src/components/UIComponents/SidebarPlugin/index.js b/contrib/theme/src/components/UIComponents/SidebarPlugin/index.js
similarity index 100%
rename from public/theme/src/components/UIComponents/SidebarPlugin/index.js
rename to contrib/theme/src/components/UIComponents/SidebarPlugin/index.js
diff --git a/public/theme/src/components/UIComponents/Table.vue b/contrib/theme/src/components/UIComponents/Table.vue
similarity index 100%
rename from public/theme/src/components/UIComponents/Table.vue
rename to contrib/theme/src/components/UIComponents/Table.vue
diff --git a/public/theme/src/components/UIComponents/index.js b/contrib/theme/src/components/UIComponents/index.js
similarity index 100%
rename from public/theme/src/components/UIComponents/index.js
rename to contrib/theme/src/components/UIComponents/index.js
diff --git a/public/theme/src/globalComponents.js b/contrib/theme/src/globalComponents.js
similarity index 100%
rename from public/theme/src/globalComponents.js
rename to contrib/theme/src/globalComponents.js
diff --git a/public/theme/src/globalDirectives.js b/contrib/theme/src/globalDirectives.js
similarity index 100%
rename from public/theme/src/globalDirectives.js
rename to contrib/theme/src/globalDirectives.js
diff --git a/public/theme/src/light-bootstrap-main.js b/contrib/theme/src/light-bootstrap-main.js
similarity index 100%
rename from public/theme/src/light-bootstrap-main.js
rename to contrib/theme/src/light-bootstrap-main.js
diff --git a/public/theme/src/main.js b/contrib/theme/src/main.js
similarity index 100%
rename from public/theme/src/main.js
rename to contrib/theme/src/main.js
diff --git a/public/theme/src/routes/routes.js b/contrib/theme/src/routes/routes.js
similarity index 100%
rename from public/theme/src/routes/routes.js
rename to contrib/theme/src/routes/routes.js
diff --git a/public/theme/static/css/nucleo-icons.css b/contrib/theme/static/css/nucleo-icons.css
similarity index 100%
rename from public/theme/static/css/nucleo-icons.css
rename to contrib/theme/static/css/nucleo-icons.css
diff --git a/public/theme/static/fonts/nucleo-icons.eot b/contrib/theme/static/fonts/nucleo-icons.eot
similarity index 100%
rename from public/theme/static/fonts/nucleo-icons.eot
rename to contrib/theme/static/fonts/nucleo-icons.eot
diff --git a/public/theme/static/fonts/nucleo-icons.svg b/contrib/theme/static/fonts/nucleo-icons.svg
similarity index 100%
rename from public/theme/static/fonts/nucleo-icons.svg
rename to contrib/theme/static/fonts/nucleo-icons.svg
diff --git a/public/theme/static/fonts/nucleo-icons.ttf b/contrib/theme/static/fonts/nucleo-icons.ttf
similarity index 100%
rename from public/theme/static/fonts/nucleo-icons.ttf
rename to contrib/theme/static/fonts/nucleo-icons.ttf
diff --git a/public/theme/static/fonts/nucleo-icons.woff b/contrib/theme/static/fonts/nucleo-icons.woff
similarity index 100%
rename from public/theme/static/fonts/nucleo-icons.woff
rename to contrib/theme/static/fonts/nucleo-icons.woff
diff --git a/public/theme/static/fonts/nucleo-icons.woff2 b/contrib/theme/static/fonts/nucleo-icons.woff2
similarity index 100%
rename from public/theme/static/fonts/nucleo-icons.woff2
rename to contrib/theme/static/fonts/nucleo-icons.woff2
diff --git a/public/theme/static/img/bg.jpg b/contrib/theme/static/img/bg.jpg
similarity index 100%
rename from public/theme/static/img/bg.jpg
rename to contrib/theme/static/img/bg.jpg
diff --git a/public/theme/static/img/favicon.png b/contrib/theme/static/img/favicon.png
similarity index 100%
rename from public/theme/static/img/favicon.png
rename to contrib/theme/static/img/favicon.png
diff --git a/public/theme/static/img/loading-bubbles.svg b/contrib/theme/static/img/loading-bubbles.svg
similarity index 100%
rename from public/theme/static/img/loading-bubbles.svg
rename to contrib/theme/static/img/loading-bubbles.svg
diff --git a/public/theme/static/img/logo.png b/contrib/theme/static/img/logo.png
similarity index 100%
rename from public/theme/static/img/logo.png
rename to contrib/theme/static/img/logo.png
diff --git a/public/theme/static/img/share.jpg b/contrib/theme/static/img/share.jpg
similarity index 100%
rename from public/theme/static/img/share.jpg
rename to contrib/theme/static/img/share.jpg
diff --git a/public/theme/static/img/sidebar-5.jpg b/contrib/theme/static/img/sidebar-5.jpg
similarity index 100%
rename from public/theme/static/img/sidebar-5.jpg
rename to contrib/theme/static/img/sidebar-5.jpg
diff --git a/public/theme/yarn.lock b/contrib/theme/yarn.lock
similarity index 100%
rename from public/theme/yarn.lock
rename to contrib/theme/yarn.lock
diff --git a/phpunit.xml.dist b/phpunit.xml.dist
index c77640f..e365ea4 100644
--- a/phpunit.xml.dist
+++ b/phpunit.xml.dist
@@ -22,6 +22,27 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Command/GenerateConfigCommand.php b/src/Command/GenerateConfigCommand.php
index c98e6b4..b5c64d9 100644
--- a/src/Command/GenerateConfigCommand.php
+++ b/src/Command/GenerateConfigCommand.php
@@ -56,4 +56,4 @@ class GenerateConfigCommand extends Command
$io->success('Configs generated');
}
-}
\ No newline at end of file
+}
diff --git a/src/Command/RunDaemonCommand.php b/src/Command/RunDaemonCommand.php
new file mode 100644
index 0000000..28233fe
--- /dev/null
+++ b/src/Command/RunDaemonCommand.php
@@ -0,0 +1,49 @@
+connection = $connection;
+ $this->configGenerator = $configGenerator;
+ }
+
+ protected function configure()
+ {
+ $this
+ ->setName('recast:daemon')
+ ->setDescription('Run daemon which automaticly update config and reloads RTMP Server if needed');
+ }
+
+ protected function execute(InputInterface $input, OutputInterface $output)
+ {
+ while(1) {
+ if ($this->connection->fetchColumn('SELECT 1 FROM queue')) {
+ $this->configGenerator->generate();
+ system($this->container->getParameter('nginxReloadCommand'));
+
+ //$io = new SymfonyStyle($input, $output);
+ //$io->success('Configs generated, rtmp has been reloaded');
+ $this->connection->executeQuery('TRUNCATE queue');
+ }
+ sleep(3);
+ }
+ }
+}
diff --git a/src/Component/Nginx/ConfigGenerator.php b/src/Component/Nginx/ConfigGenerator.php
index d506919..f2dc48a 100644
--- a/src/Component/Nginx/ConfigGenerator.php
+++ b/src/Component/Nginx/ConfigGenerator.php
@@ -34,6 +34,7 @@ rtmp {
}
http {
+\taccess_log /dev/null;
\tserver {
\t\tlisten 127.0.0.1:26765;
\t\tlocation /stat {
@@ -132,4 +133,4 @@ http {
$service = $this->manager->getServiceByName($endpoint->getType());
return $service->buildStreamUrl($endpoint);
}
-}
\ No newline at end of file
+}