mobil optimierter für erstes benutzten bereit.

This commit is contained in:
2025-10-17 13:38:21 +02:00
parent aaa73ee0b7
commit be6843371d
8 changed files with 166 additions and 163 deletions

View File

@ -19,8 +19,8 @@
</ItemGroup>
<ItemGroup>
<Reference Include="Oqtane.Client"><HintPath>..\..\oqtane.framework-dev\Oqtane.Server\bin\Debug\net9.0\Oqtane.Client.dll</HintPath></Reference>
<Reference Include="Oqtane.Shared"><HintPath>..\..\oqtane.framework-dev\Oqtane.Server\bin\Debug\net9.0\Oqtane.Shared.dll</HintPath></Reference>
<Reference Include="Oqtane.Client"><HintPath>..\..\oqtane.framework\Oqtane.Server\bin\Debug\net9.0\Oqtane.Client.dll</HintPath></Reference>
<Reference Include="Oqtane.Shared"><HintPath>..\..\oqtane.framework\Oqtane.Server\bin\Debug\net9.0\Oqtane.Shared.dll</HintPath></Reference>
</ItemGroup>
<PropertyGroup>

View File

@ -2,29 +2,26 @@
@inherits ThemeBase
@inject ISettingService SettingService
<div class="wrapper d-flex flex-column min-vh-100">
<main role="main" class="flex-fill">
<nav class="navigation">
<div class="container d-flex justify-content-between align-items-center">
<a class="navbar-brand" href="https://www.szu-home.at/">
<img src="Images/szu-Logo.png" alt="Logo" class="img-fluid" style="max-height: 60px;" />
</a>
<Menu Orientation="Horizontal" />
<div class="controls ms-auto">
<div class="controls-group">
<UserProfile ShowRegister="@_register" />
<Login ShowLogin="@_login" />
<ControlPanel LanguageDropdownAlignment="right" />
</div>
</div>
<main role="main">
<nav class="navbar navbar-dark bg-primary fixed-top">
<div class="d-flex align-items-center gap-2 order-1 order-md-1">
<Logo />
</div>
<div class="d-flex align-items-right gap-2 order-1 order-md-1">
<Menu Orientation="Horizontal"></Menu>
</div>
<div class="d-flex align-items-center gap-2 order-1 order-md-1">
<div class="d-flex align-items-center gap-2 order-1 order-md-1">
<ControlPanel/>
</div>
<div class="d-flex align-items-center gap-2 order-1 order-md-1">
<UserProfile ShowRegister="@_register" />
<Login ShowLogin="@_login" />
</div>
</div>
</nav>
<div class="content">
<div class="container">
<div class="row">
@ -108,15 +105,8 @@
</div>
<Pane Name="Bottom Full Width" />
</div>
<footer class="footer">
<div class="text text-center">
<p>Impressum | Datenschutz | AGB</p>
</div>
</footer>
</main>
</div>
@code {
public override string Name => "Theme1";
@ -141,8 +131,5 @@
}
}
private void ToggleDropdown()
{
_showDropdown = !_showDropdown;
}
}

View File

@ -1,87 +1,5 @@
/* Oqtane Styles */
html, body {
height: 100%;
margin: 0;
}
.navigation {
max-width: 80vw; /* oder max-width: 100%; */
margin: 0 auto;
position: fixed;
top: 0;
z-index: 1000;
background-color: #bbb;
padding: 1rem 0;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
width: 80vw; /* Wichtig! */
left: 50%; /* horizontale Zentrierung mit transform */
transform: translateX(-50%);
border: 3px solid #75767B;
border-top: none;
border-bottom: none;
}
body {
padding-top: 100px; /* H<>he der fixierten Navigation kompensieren */
}
.navigation .app-logo .img-fluid {
max-height: 60px;
}
.navigation .app-menu {
display: flex;
gap: 1rem;
}
.navigation .nav-item a {
color: black;
font-weight: normal;
text-decoration: none;
}
.navigation .nav-item a.active {
font-weight: bold;
}
/* Footer */
.footer {
background-color: #bbb;
padding: 1rem 0;
text-align: center;
border: 3px solid #75767B;
border-top: none;
border-bottom: none;
margin-top: auto;
}
.wrapper {
max-width: 80vw; /* max. 80% der Viewport-Breite */
margin: 0 auto; /* horizontal zentrieren */
display: flex;
flex-direction: column;
min-height: 100vh;
}
main.flex-fill {
flex: 1 0 auto; /* Flex-grow 1, flex-shrink 0, flex-basis auto */
display: flex;
flex-direction: column;
min-height: 0; /* Wichtig f<>r flexbox overflow */
}
.content {
width: 80vw; /* Fixe Breite 80% Viewport */
margin: 0 auto;
flex-grow: 1;
display: flex;
flex-direction: column;
border: 3px solid #75767B;
border-top: none;
border-bottom: none;
background-color: white;
padding: 1rem;
padding-top: 7rem;
}
/* App Logo */
@ -98,14 +16,19 @@ main.flex-fill {
background-color: #ffffff !important;
border-width: 0.5px !important;
border-bottom-color: #ccc !important;
color: #000 !important;
}
.table .form-select {
background-color: #ffffff !important;
border-width: 0.5px !important;
border-bottom-color: #ccc !important;
color: #000 !important;
}
.bg-primary {
background-color: gray !important;
}
.table .btn-primary {
background-color: var(--bs-primary);
}
@ -129,27 +52,26 @@ main.flex-fill {
font-size: 0.9rem;
padding-bottom: 0.5rem;
white-space: nowrap;
margin-left: 1rem;
}
.app-menu .nav-item a {
border-radius: 4px;
height: 3rem;
display: flex;
align-items: center;
line-height: 3rem;
padding-left: 1rem;
}
.app-menu .nav-item a {
border-radius: 4px;
height: 3rem;
display: flex;
align-items: center;
line-height: 3rem;
padding-left: 1rem;
}
.app-menu .nav-item a.active {
background-color: rgba(255,255,255,0.25);
color: white;
}
.app-menu .nav-item a.active {
background-color: dimgrey;
color: white;
}
.app-menu .nav-item a:hover {
background-color: rgba(255,255,255,0.1);
color: white;
}
.app-menu .nav-item a:hover {
background-color: dimgray;
color: white;
}
.app-menu .nav-link .oi {
width: 1.5rem;
@ -158,27 +80,121 @@ main.flex-fill {
top: -2px;
}
.navbar-toggler {
background-color: #fff;
border: 2px solid #75767B;
border-radius: 6px;
padding: 0.5rem 0.75rem;
margin: .5rem;
box-shadow: 0 2px 6px rgba(0,0,0,0.08);
transition: background 0.2s, box-shadow 0.2s, border-color 0.2s;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
.app-search input {
width: auto;
}
.navbar-toggler:hover, .navbar-toggler:focus {
background-color: #f0f0f0;
border-color: #444;
box-shadow: 0 4px 12px rgba(0,0,0,0.15);
outline: none;
.navbar-toggler {
background-color: rgba(255, 255, 255, 0.1);
margin: .5rem;
}
div.app-moduleactions a.dropdown-toggle, div.app-moduleactions div.dropdown-menu {
color: #ffffff;
}
.footer {
padding-top: 15px;
min-height: 40px;
text-align: center;
color: #ffffff;
z-index: 1000;
}
@media (max-width: 991.98px) {
.app-search {
border-radius: 6px;
}
.app-search input {
display: none !important;
}
.app-search input + button {
position: initial;
padding-top: 7px;
padding-bottom: 7px;
}
.app-search:active, .app-search:hover {
display: block;
position: fixed;
top: 0;
min-height: 96px;
width: 100%;
left: 0;
z-index: 999;
border-radius: 0;
}
.app-search:active .app-form-inline, .app-search:hover .app-form-inline {
margin: 10px auto;
position: relative;
display: block;
max-width: 80%;
}
.app-search:active .app-form-inline input, .app-search:hover .app-form-inline input {
width: 100%;
display: block !important;
}
.app-search:active .app-form-inline input + button, .app-search:hover .app-form-inline input + button {
position: absolute;
color: rgb(42, 159, 214);
padding-top: 6px;
padding-bottom: 6px;
}
}
@media (max-width: 767.98px) {
/* Dynamische Schriftgr<67><72>e im Dropdown-Men<65> */
.app-menu .nav-item a {
font-size: clamp(10px, 3vw, 20px); /* Dynamische, begrenzte Schriftgr<67><72>e */
}
.app-menu-toggler {
position: fixed;
top: 1.5rem; /* Abstand von oben */
right: 1rem; /* Abstand von rechts */
}
.app-menu {
position: fixed;
right: 1rem;
margin-top: 3.5rem;
width: 25%;
background-color: grey;
}
.navbar {
position: fixed;
width: 100%;
}
.controls {
height: 60px;
top: 15px;
position: fixed;
top: 0px;
width: 100%;
background-color: grey;
}
.controls-group {
float: right;
margin-right: 25px;
}
.content {
position: relative;
top: 60px;
}
.app-search:active, .app-search:hover {
min-height: 60px;
}
}

View File

@ -2,6 +2,6 @@
set TargetFramework=%1
set ProjectName=%2
XCOPY "..\Client\bin\Debug\%TargetFramework%\%ProjectName%.Client.Oqtane.dll" "..\..\oqtane.framework-dev\Oqtane.Server\bin\Debug\%TargetFramework%\" /Y
XCOPY "..\Client\bin\Debug\%TargetFramework%\%ProjectName%.Client.Oqtane.pdb" "..\..\oqtane.framework-dev\Oqtane.Server\bin\Debug\%TargetFramework%\" /Y
XCOPY "..\Client\wwwroot\*" "..\..\oqtane.framework-dev\Oqtane.Server\wwwroot\" /Y /S /I
XCOPY "..\Client\bin\Debug\%TargetFramework%\%ProjectName%.Client.Oqtane.dll" "..\..\oqtane.framework\Oqtane.Server\bin\Debug\%TargetFramework%\" /Y
XCOPY "..\Client\bin\Debug\%TargetFramework%\%ProjectName%.Client.Oqtane.pdb" "..\..\oqtane.framework\Oqtane.Server\bin\Debug\%TargetFramework%\" /Y
XCOPY "..\Client\wwwroot\*" "..\..\oqtane.framework\Oqtane.Server\wwwroot\" /Y /S /I

View File

@ -3,6 +3,6 @@
TargetFramework=$1
ProjectName=$2
cp -f "../Client/bin/Debug/$TargetFramework/$ProjectName$.Client.Oqtane.dll" "../../oqtane.framework-dev/Oqtane.Server/bin/Debug/$TargetFramework/"
cp -f "../Client/bin/Debug/$TargetFramework/$ProjectName$.Client.Oqtane.pdb" "../../oqtane.framework-dev/Oqtane.Server/bin/Debug/$TargetFramework/"
cp -rf "../Server/wwwroot/"* "../../oqtane.framework-dev/Oqtane.Server/wwwroot/"
cp -f "../Client/bin/Debug/$TargetFramework/$ProjectName$.Client.Oqtane.dll" "../../oqtane.framework/Oqtane.Server/bin/Debug/$TargetFramework/"
cp -f "../Client/bin/Debug/$TargetFramework/$ProjectName$.Client.Oqtane.pdb" "../../oqtane.framework/Oqtane.Server/bin/Debug/$TargetFramework/"
cp -rf "../Server/wwwroot/"* "../../oqtane.framework/Oqtane.Server/wwwroot/"

View File

@ -3,5 +3,5 @@ set TargetFramework=%1
set ProjectName=%2
del "*.nupkg"
"..\..\oqtane.framework-dev\oqtane.package\nuget.exe" pack %ProjectName%.nuspec -Properties targetframework=%TargetFramework%;projectname=%ProjectName%
XCOPY "*.nupkg" "..\..\oqtane.framework-dev\Oqtane.Server\wwwroot\Packages\" /Y
"..\..\oqtane.framework\oqtane.package\nuget.exe" pack %ProjectName%.nuspec -Properties targetframework=%TargetFramework%;projectname=%ProjectName%
XCOPY "*.nupkg" "..\..\oqtane.framework\Oqtane.Server\wwwroot\Packages\" /Y

View File

@ -1,5 +1,5 @@
TargetFramework=$1
ProjectName=$2
"..\..\oqtane.framework-dev\oqtane.package\nuget.exe" pack %ProjectName%.nuspec -Properties targetframework=%TargetFramework%;projectname=%ProjectName%
cp -f "*.nupkg" "..\..\oqtane.framework-dev\Oqtane.Server\Packages\"
"..\..\oqtane.framework\oqtane.package\nuget.exe" pack %ProjectName%.nuspec -Properties targetframework=%TargetFramework%;projectname=%ProjectName%
cp -f "*.nupkg" "..\..\oqtane.framework\Oqtane.Server\Packages\"

View File

@ -2,7 +2,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.13.35825.156 d17.13
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Oqtane.Server", "..\oqtane.framework-dev\Oqtane.Server\Oqtane.Server.csproj", "{3AB6FCC9-EFEB-4C0E-A2CF-8103914C5196}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Oqtane.Server", "..\oqtane.framework\Oqtane.Server\Oqtane.Server.csproj", "{3AB6FCC9-EFEB-4C0E-A2CF-8103914C5196}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SZUAbsolventenverein.Theme.Website.Client", "Client\SZUAbsolventenverein.Theme.Website.Client.csproj", "{AA8E58A1-CD09-4208-BF66-A8BB341FD669}"
EndProject