From d9bd6001bb64c2719f8072782bce72bf7411495f Mon Sep 17 00:00:00 2001 From: Kristine Bujold Date: Thu, 6 Dec 2018 10:35:40 -0500 Subject: [PATCH] Move Starlingx branding from stx-horizon to stx-gui Moved themes/titanium/ and themes/starlingx/ folder from stx-horizon into stx-gui. Renamed titanium to starlingx and deleted titanium. Updated the spec file so the themes/starlingx/ folder is installed under openstack_dashboard/themes. Story: 2004552 Task: 28310 Change-Id: I328df72bca0c8d5288a36a5257cf5738eba622da Signed-off-by: Kristine Bujold --- starlingx-dashboard/centos/build_srpm.data | 2 +- .../centos/starlingx-dashboard.spec | 6 + .../themes/starlingx/static/_styles.scss | 38 +++++ .../themes/starlingx/static/_variables.scss | 92 ++++++++++++ .../starlingx/static/components/_badges.scss | 76 ++++++++++ .../starlingx/static/components/_charts.scss | 19 +++ .../starlingx/static/components/_sidebar.scss | 134 ++++++++++++++++++ .../starlingx/static/components/_splash.scss | 65 +++++++++ .../starlingx/static/components/_tables.scss | 39 +++++ .../starlingx/static/components/_topbar.scss | 45 ++++++ .../themes/starlingx/static/img/favicon.png | Bin 0 -> 6338 bytes .../starlingx/static/img/logo-splash.svg | 1 + .../themes/starlingx/static/img/logo.png | Bin 0 -> 7853 bytes .../themes/starlingx/templates/500.html | 90 ++++++++++++ .../starlingx/templates/_stylesheets.html | 31 ++++ .../starlingx/templates/header/_brand.html | 7 + .../templates/header/_user_menu.html | 40 ++++++ 17 files changed, 684 insertions(+), 1 deletion(-) create mode 100755 starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/_styles.scss create mode 100755 starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/_variables.scss create mode 100755 starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_badges.scss create mode 100755 starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_charts.scss create mode 100755 starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_sidebar.scss create mode 100755 starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_splash.scss create mode 100755 starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_tables.scss create mode 100755 starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_topbar.scss create mode 100644 starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/img/favicon.png create mode 100644 starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/img/logo-splash.svg create mode 100644 starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/img/logo.png create mode 100644 starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/templates/500.html create mode 100644 starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/templates/_stylesheets.html create mode 100644 starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/templates/header/_brand.html create mode 100755 starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/templates/header/_user_menu.html diff --git a/starlingx-dashboard/centos/build_srpm.data b/starlingx-dashboard/centos/build_srpm.data index 4f322859..501f3862 100644 --- a/starlingx-dashboard/centos/build_srpm.data +++ b/starlingx-dashboard/centos/build_srpm.data @@ -1,2 +1,2 @@ SRC_DIR="starlingx-dashboard" -TIS_PATCH_VER=20 +TIS_PATCH_VER=21 diff --git a/starlingx-dashboard/centos/starlingx-dashboard.spec b/starlingx-dashboard/centos/starlingx-dashboard.spec index 7e8edd4c..e4c9ef56 100644 --- a/starlingx-dashboard/centos/starlingx-dashboard.spec +++ b/starlingx-dashboard/centos/starlingx-dashboard.spec @@ -22,6 +22,7 @@ starlingx specific horizon plugins %define py_pkg_name starlingx_dashboard %define enabled_dir %{_datadir}/openstack-dashboard/openstack_dashboard/enabled/ +%define stx_themes_dir %{_datadir}/openstack-dashboard/openstack_dashboard/themes/starlingx/ %define debug_package %{nil} @@ -42,6 +43,10 @@ install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ install -d -m 755 %{buildroot}%{enabled_dir} install -p -D -m 755 %{py_pkg_name}/enabled/* %{buildroot}%{enabled_dir} +install -d -m 755 %{buildroot}%{stx_themes_dir} +cp -R %{py_pkg_name}/themes/starlingx/* %{buildroot}%{stx_themes_dir} +chmod -R 755 %{buildroot}%{stx_themes_dir}/* + %clean rm -rf $RPM_BUILD_ROOT @@ -51,6 +56,7 @@ rm -rf $RPM_BUILD_ROOT %{python2_sitelib}/%{py_pkg_name}-%{version}*.egg-info %{enabled_dir} +%{stx_themes_dir} %package wheels Summary: %{name} wheels diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/_styles.scss b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/_styles.scss new file mode 100755 index 00000000..ab581ffd --- /dev/null +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/_styles.scss @@ -0,0 +1,38 @@ +@import "/themes/starlingx/variables"; +@import "/themes/default/styles"; + + +// WRS components +@import "components/badges"; +// (Eddie Ramirez): To be deprecated +// @import "components/sidebar"; +// @import "components/topbar"; +// @import "components/splash"; +@import "components/charts"; +@import "components/tables"; + + +.messages { + width: 500px; + margin-left: -250px; + left: 50%; + right: auto; +} + +.password-icon { + top: 0px; + color: gray; +} + +#main_content { + height: 100%; + width: 100%; + display: table; + + #content_body { + width: 100%; + display: table-cell; + padding-left: 0px; + vertical-align: top; + } +} diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/_variables.scss b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/_variables.scss new file mode 100755 index 00000000..d03767b0 --- /dev/null +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/_variables.scss @@ -0,0 +1,92 @@ +@import "/themes/default/variables"; + +/* Primary Brand Colors */ +$windriver-white: #ffffff; +$windriver-black: #000000; +$windriver-red: #CC0000; +$windriver-lighter-red: #CC1515; +$windriver-gray: #333333; +$windriver-lighter-gray: #9f9f9f; + +/* Secondary Brand Colors */ +$windriver-slate-green: #336666; +$windriver-slate-blue: #336699; +$windriver-tan: #CC9966; +$windriver-gold: #FFCC33; + +/* Global Styles */ +$text-color: #666; +$link-color: $windriver-slate-blue; + +$gray-light: #cccccc; +$font-size-base: 15px !default; +$font-size-small: ceil(($font-size-base * 0.85)) !default; // ~12px + +$sidebar-background-color: #666; +$sidebar-active-color: $windriver-red; +$context-delimiter-size: 13px; + +$errorBackground: #f2dede; +$warningBackground: #fcf8e3; + +/* Bootstrap Customizations */ +$linkColor: $link-color; +$textColor: $text-color; + +// Splash Screen Styles +$splash-bg-color: #666; +$splash-login-bg-color: #333; +$splash-border-color: #000; +$splash-text-color: #fff; +$splash-label-color: #eee; + +// Dashboard Styles +$sidebar-width: 220px; + +$brand-bg-color: $windriver-black; +$brand-bg-highlight: #666; +$brand-text-color: $windriver-white; +$brand-width: $sidebar-width; +$brand-height: 30px; + +$nav-tabs-bg-color: $windriver-white; +$nav-tabs-link-color: $windriver-white; +$nav-tabs-active-color: $text-color; +$nav-tabs-hover-color: $windriver-black; + +$main-nav-bg-color: #666; +$main-nav-title-color: $windriver-white; +$main-nav-link-color: #ddd; +$main-nav-width: $sidebar-width; + +$switch-bar-bg-color: $windriver-black; +$switch-bar-bg-hover: $windriver-gray; +$switch-bar-text-color: $windriver-red; + +$topbar-background-color: #4a4a4a; +$topbar-title-color: $windriver-white; +$topbar-text-color: #eee; +$topbar-link-color: $topbar-text-color; +$topbar-hover-color: $windriver-white; + +$badge-color-primary: $windriver-slate-blue; +$badge-color-danger: $windriver-red; +$badge-color-warning: $windriver-gold; +$badge-color: #fff; +$badge-link-hover-color: #fff; +$badge-bg: $gray-light; +$badge-active-color: $linkColor; +$badge-active-bg: #fff; +$badge-font-weight: bold; +$badge-line-height: 1; +$badge-border-radius: 10px; +$badge-font-size: ceil(($font-size-small * 0.85)); // ~12px + +$modal-lg: 1200px; // overide default/bootstrap/_variable.sccs + +//Default theme overrides +$brand-primary: $windriver-slate-blue; +$brand-success: #5cb85c !default; +$brand-info: #5bc0de !default; +$brand-warning: $windriver-gold; +$brand-danger: $windriver-red; diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_badges.scss b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_badges.scss new file mode 100755 index 00000000..b086ce77 --- /dev/null +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_badges.scss @@ -0,0 +1,76 @@ +// +// Badges +// -------------------------------------------------- + + +// Base classes +.badge { + display: inline-block; + min-width: 10px; + padding: 3px 7px; + font-size: $badge-font-size; + font-weight: $badge-font-weight; + color: $badge-color; + line-height: $badge-line-height; + vertical-align: baseline; + white-space: nowrap; + text-align: center; + background-color: $badge-bg; + border-radius: $badge-border-radius; + + // Empty badges collapse automatically (not available in IE8) + &:empty { + display: none; + } + + // Quick fix for badges in buttons + .btn & { + position: relative; + top: -1px; + } + .btn-xs & { + top: 0; + padding: 1px 5px; + } +} + +.badge-success { + background-color: $badge-color-primary; +} +.badge-danger { + background-color: $badge-color-danger; +} +.badge-warning { + background-color: darken($badge-color-warning, 10%); +} + +.status-success { + color: $brand-success; +} +.status-danger { + color: $badge-color-danger; +} +.status-warning { + color: darken($badge-color-warning, 10%); +} + + +// Hover state, but only for links +a.badge { + &:hover, + &:focus { + color: $badge-link-hover-color; + text-decoration: none; + cursor: pointer; + } +} + +// Account for counters in navs +a.list-group-item.active > .badge, +.nav-pills > .active > a > .badge { + color: $badge-active-color; + background-color: $badge-active-bg; +} +.nav-pills > li > a > .badge { + margin-left: 3px; +} \ No newline at end of file diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_charts.scss b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_charts.scss new file mode 100755 index 00000000..c9060125 --- /dev/null +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_charts.scss @@ -0,0 +1,19 @@ +// Chart Usage Specifics +.d3_pie_chart_usage { + + // The inner arc + .arc.inner { + fill: #336699; + stroke: none; + + // Specialness if its full + &.FULL { + fill: $windriver-red; + } + + // Specialness if its almost full + &.NEARLY_FULL { + fill: $windriver-gold; + } + } +} diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_sidebar.scss b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_sidebar.scss new file mode 100755 index 00000000..4cc9a0c0 --- /dev/null +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_sidebar.scss @@ -0,0 +1,134 @@ + +// Indent selected menu items +#sidebar .openstack-panel.active { + margin-left: 15px; +} + +// Squish accordian pills +#sidebar-accordion { + a { + background-color: $main-nav-bg-color; + color: $main-nav-bg-color; + padding: .4em 1.2em; + background: transparent; + } + .panel > a{ + background: transparent; + } +} + +// Coloring of sidebar +#sidebar { + + // Header highlight color + //.openstack-dashboard > a:hover, + .openstack-dashboard > a:focus, + li { + background-color: $sidebar-background-color; + } + + .nav-pills.nav-stacked { + & > li { + & > a { + color: $windriver-white; + background: $main-nav-bg-color; + } + } + } + + // Dashboard headers + #sidebar-accordion > li.panel > a{ + //font-size: 15px; + border-radius: 9px; + background-color: $windriver-lighter-gray; + } + + // Panel group headers + #sidebar-accordion li.openstack-panel-group > a { + //font-size: 15px; + color: $windriver-white; + text-align: left; + + &:hover { + background-color: transparent; + } + } + + // All links + li.openstack-dashboard a.openstack-panel { + color: $windriver-white; + // Link on hover + &:hover { + color: $windriver-lighter-red; + background-color: $sidebar-background-color; + } + } + + // Selected panel + li.openstack-dashboard a.openstack-panel.active { + color: $sidebar-active-color; + background: $windriver-white; + border-left: 2px; + border-left-style: solid; + border-left-color: $sidebar-active-color; + } + +} + +#sidebar { + float: none; + display: table-cell; + + height: 100%; + background-color: $sidebar-background-color; + + .branding { + padding-bottom: 0px; + padding-top: 0px; + padding-left: 0px; + text-align: center; + + /* vertical gradient (excluding IE9 and below - which clips the nav-tabs) */ + background-color: mix($brand-bg-color, $brand-bg-highlight, 60%); // Old Browswers + background-image: -moz-linear-gradient(top, $brand-bg-color, $brand-bg-highlight); // FF 3.6+ + background-image: -ms-linear-gradient(top, $brand-bg-color, $brand-bg-highlight); // IE10 + background-image: -webkit-gradient(linear, 0 0, 0 100%, from($brand-bg-color), to($brand-bg-highlight)); // Safari 4+, Chrome 2+ + background-image: -webkit-linear-gradient(top, $brand-bg-color, $brand-bg-highlight); // Safari 5.1+, Chrome 10+ + background-image: -o-linear-gradient(top, $brand-bg-color, $brand-bg-highlight); // Opera 11.10 + background-image: linear-gradient(top, $brand-bg-color, $brand-bg-highlight); // The standard + background-repeat: repeat-x; + + .brand { + background: none; + padding-bottom: 0px; + margin-top: 0px; + + a { + float: none; + color: $brand-text-color; + text-indent: inherit; + text-align: center; + text-decoration: none; + text-shadow: 2px 1px 15px #000; + font-size: 20px; + line-height: 20px; + margin: 20px 0px 0px 0px; + padding-top: 0px; + padding-bottom: 0px; + height: $brand-height; + width: $brand-width; + } + } + + .system { + width: $sidebar-width; + overflow-wrap: break-word; + text-align: center; + color: $brand-text-color; + padding-top: 0px; + padding-bottom: 0px; + margin-bottom: 10px; + font-size: 15px; + } + } +} diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_splash.scss b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_splash.scss new file mode 100755 index 00000000..84273ccb --- /dev/null +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_splash.scss @@ -0,0 +1,65 @@ + +#splash { + background: $splash-bg-color; + color: $splash-text-color; + + .panel , .panel-heading, .panel-footer{ + background: $splash-login-bg-color; + border-color: $splash-border-color; + } + + .panel-body { + // Unstretch text fields + margin-right: 40px; + margin-left: 40px; + } + + .panel-heading{ + // White line + border-bottom-color: $splash-label-color; + + /* vertical gradient (excluding IE9 and below - which clips the nav-tabs) */ + background-color: mix($brand-bg-color, $splash-login-bg-color, 60%); // Old Browswers + background-image: -moz-linear-gradient(top, $brand-bg-color, $splash-login-bg-color); // FF 3.6+ + background-image: -ms-linear-gradient(top, $brand-bg-color, $splash-login-bg-color); // IE10 + background-image: -webkit-gradient(linear, 0 0, 0 100%, from($brand-bg-color), to($splash-login-bg-color)); // Safari 4+, Chrome 2+ + background-image: -webkit-linear-gradient(top, $brand-bg-color, $splash-login-bg-color); // Safari 5.1+, Chrome 10+ + background-image: -o-linear-gradient(top, $brand-bg-color, $splash-login-bg-color); // Opera 11.10 + background-image: linear-gradient(top, $brand-bg-color, $splash-login-bg-color); // The standard + background-repeat: repeat-x; + + } + + .panel-footer { + // Hide lower line + border-top: none; + + // Move over button + button { + margin-right: 40px; + } + } + + .red-line { + height: 53px; + width: 43%; + border-bottom: 2px solid $windriver-red; + margin-bottom: -18px; + margin-left: -16px; + } + + h3 { + display: block; + color: $splash-text-color; + text-align: center; + margin-bottom: 30px; + font-size: 32px; + line-height: 39px; + text-shadow: 2px 2px 4px #000000; + } + form label { + color: $splash-label-color; + font-weight: normal; + } + +} \ No newline at end of file diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_tables.scss b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_tables.scss new file mode 100755 index 00000000..73d434c8 --- /dev/null +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_tables.scss @@ -0,0 +1,39 @@ +// Exact selectors below required to override .table-striped +.table tbody tr, +.table-striped.datatable tbody tr { + &.status_down > td, + &.status_down.odd > td, + &.status_down.even > td { + background-color: $errorBackground; + } + &.warning > td, + &.warning.odd > td, + &.warning.even > td { + background-color: $warningBackground; + } +} + +// Hover states for .table-hover +.table-hover tbody tr, +.table-striped.datatable tbody tr { + &.status_down:hover > td, + &.status_down.odd:hover > td, + &.status_down.even:hover > td { + background-color: darken($errorBackground, 5%); + } + &.status_unknown:hover > td, + &.status_unknown.odd:hover > td, + &.status_unknown.even:hover > td { + background-color: darken($warningBackground, 5%); + } +} + +.table_actions .table_limit { + display: inline-block; + margin-left: 5px; + border: 1px; + + .btn.btn-small .caret { + margin-top: 7px; + } +} \ No newline at end of file diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_topbar.scss b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_topbar.scss new file mode 100755 index 00000000..35c0122e --- /dev/null +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/components/_topbar.scss @@ -0,0 +1,45 @@ + +.navbar-fixed-top, .topbar { + padding: 0px 0px; + background-color: $topbar-background-color; + + a.navbar-brand { + padding-left: 0px; + } + + h1.brand a { + background: none; + } + + .navbar-default .navbar-nav { + .dropdown-menu { + background-color: white; + } + & > li > a{ + color: $topbar-text-color; + } + } + + .context_selection{ + float: left; + } + + .user_settings { + float: right; + } + + // Styling for time & alarms + .navbar-center { + color: $topbar-text-color; + padding-top: 0.8em; + + display: table; + margin-left: auto; + margin-right: auto; + float: none; + + .datetime { + padding-right: 13px; + } + } +} diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/img/favicon.png b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/img/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..0f0c6d4536d9f2d1eddd9b2cf470cf86e1a787c7 GIT binary patch literal 6338 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 literal 0 HcmV?d00001 diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/img/logo-splash.svg b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/img/logo-splash.svg new file mode 100644 index 00000000..5e1f221c --- /dev/null +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/img/logo-splash.svg @@ -0,0 +1 @@ +StarlingX_Logo_RGB_Stacked_2color \ No newline at end of file diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/img/logo.png b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/static/img/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..f916b9a01902fb8d9b9996cd53ea452edf90366a GIT binary patch literal 7853 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 literal 0 HcmV?d00001 diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/templates/500.html b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/templates/500.html new file mode 100644 index 00000000..89ca9bfe --- /dev/null +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/templates/500.html @@ -0,0 +1,90 @@ +{% load branding i18n staticfiles %} +{% load load_config from horizon %} + +{% load_config as CONF %} + + +{% comment %} + + NB: The context for 500 pages is an empty dict. + Don't add any content here that depends on things from + the context. + +{% endcomment %} + + + + + + + + + + {% trans "Server error" %} - {% site_branding %} + {% block css %} + + {% endblock %} + + + {% block page_header %}{% endblock %} + {% block content %} +
+

{% site_branding %}

+
+ {% block text %} +

{% trans "Something went wrong!" %}

+

{% trans "An unexpected error has occurred. Try refreshing the page. If that doesn't help, contact your local administrator." %}

+ {% endblock %} +
+ +
+ {% endblock %} + {% block footer %}{% endblock %} + {% block js %}{% endblock %} + + diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/templates/_stylesheets.html b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/templates/_stylesheets.html new file mode 100644 index 00000000..8cd66216 --- /dev/null +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/templates/_stylesheets.html @@ -0,0 +1,31 @@ +{% load compress %} +{% load themes %} + +{% compress css %} + + +{% endcompress %} + + +{% current_theme as current_theme %} +{% theme_dir as theme_dir %} + +{% comment %} + The following 'include' is used to allow all scss files to share the same variable namespace + and also have access to ALL styles so that we can allow @extend functionality to persist. + + If you wish to add new scss files, it is recommended that you add them from within the + themes/themes.scss template file. +{% endcomment %} + +{% with THEME=current_theme THEME_DIR=theme_dir %} +{% compress css %} + +{% endcompress %} +{% endwith %} + + + + diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/templates/header/_brand.html b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/templates/header/_brand.html new file mode 100644 index 00000000..99cbb3f1 --- /dev/null +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/templates/header/_brand.html @@ -0,0 +1,7 @@ +{% load branding %} +{% load themes %} + + + + + diff --git a/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/templates/header/_user_menu.html b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/templates/header/_user_menu.html new file mode 100755 index 00000000..2c96e732 --- /dev/null +++ b/starlingx-dashboard/starlingx-dashboard/starlingx_dashboard/themes/starlingx/templates/header/_user_menu.html @@ -0,0 +1,40 @@ +{% load i18n %} +{% load themes %} + +{% if not_list %} + +{% else %} + +{% endif %} +