Compare commits
5 Commits
test-branc
...
lel
Author | SHA1 | Date | |
---|---|---|---|
89a166ea9b | |||
391827222e | |||
c1721bd1a1 | |||
f6630ae241 | |||
424cab64a8 |
25
.gitea/workflows/build-container.yml
Normal file
25
.gitea/workflows/build-container.yml
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
name: build-docker-imge
|
||||||
|
on:
|
||||||
|
- push
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
name: Build the docker container
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: "Git clone"
|
||||||
|
run: git clone ${{ gitea.server_url }}/${{ gitea.repository }}.git .
|
||||||
|
- name: "Git checkout"
|
||||||
|
run: git checkout "${{ gitea.sha }}"
|
||||||
|
- uses: aevea/action-kaniko@master
|
||||||
|
name: Run Kaniko to build our api docker container.
|
||||||
|
with:
|
||||||
|
image: kocoded/oqtane.framework
|
||||||
|
tag: ${{ git.workflow_sha }}
|
||||||
|
tag_with_latest: github.ref == 'refs/heads/master'
|
||||||
|
registry: git.kocoder.xyz
|
||||||
|
username: ${{ secrets.CI_RUNNER_USER }}
|
||||||
|
password: ${{ secrets.CI_RUNNER_TOKEN }}
|
||||||
|
build_file: Dockerfile
|
||||||
|
target: deploy
|
||||||
|
|
24
Dockerfile
Normal file
24
Dockerfile
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
# Build
|
||||||
|
FROM mcr.microsoft.com/dotnet/sdk:9.0 AS build
|
||||||
|
|
||||||
|
WORKDIR /source
|
||||||
|
|
||||||
|
COPY --link . .
|
||||||
|
|
||||||
|
RUN dotnet restore /source/Oqtane.sln
|
||||||
|
|
||||||
|
RUN dotnet build "/source/Oqtane.sln" -c Release -o /source/build/
|
||||||
|
|
||||||
|
# Publish
|
||||||
|
FROM build AS publish
|
||||||
|
|
||||||
|
RUN dotnet publish "Oqtane.Server/Oqtane.Server.csproj" -c Release -o /source/publish/
|
||||||
|
|
||||||
|
# Deploy
|
||||||
|
FROM mcr.microsoft.com/dotnet/aspnet:9.0 AS deploy
|
||||||
|
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
|
||||||
|
COPY --from=publish /source/publish/ /app/
|
||||||
|
ENTRYPOINT ["dotnet", "Oqtane.Server.dll"]
|
@ -56,6 +56,19 @@
|
|||||||
<input id="displayname" class="form-control" @bind="@_displayname" maxlength="50" />
|
<input id="displayname" class="form-control" @bind="@_displayname" maxlength="50" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row mb-1 align-items-center">
|
||||||
|
<Label Class="col-sm-3" For="subject" HelpText="Deine Studien- oder Ausbildungsrichtung" ResourceKey="Subject">Fachrichtung:</Label>
|
||||||
|
<div class="col-sm-9">
|
||||||
|
<input id="subject" class="form-control" @bind="@_subject" maxlength="100" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row mb-1 align-items-center">
|
||||||
|
<Label Class="col-sm-3" For="graduationYear" HelpText="Dein voraussichtlicher Abschlussjahrgang" ResourceKey="GraduationYear">Abschlussjahrgang:</Label>
|
||||||
|
<div class="col-sm-9">
|
||||||
|
<input id="graduationYear" type="number" class="form-control" @bind="@_graduationYear" min="1950" max="2100" step="1" required />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<br />
|
<br />
|
||||||
<button type="button" class="btn btn-primary" @onclick="Register">@Localizer["Register"]</button>
|
<button type="button" class="btn btn-primary" @onclick="Register">@Localizer["Register"]</button>
|
||||||
@ -89,6 +102,9 @@ else
|
|||||||
private string _displayname = string.Empty;
|
private string _displayname = string.Empty;
|
||||||
private bool _userCreated = false;
|
private bool _userCreated = false;
|
||||||
private bool _allowsitelogin = true;
|
private bool _allowsitelogin = true;
|
||||||
|
private string _subject = string.Empty;
|
||||||
|
private int _graduationYear;
|
||||||
|
|
||||||
|
|
||||||
public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.Anonymous;
|
public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.Anonymous;
|
||||||
|
|
||||||
@ -124,7 +140,10 @@ else
|
|||||||
Password = _password,
|
Password = _password,
|
||||||
Email = _email,
|
Email = _email,
|
||||||
DisplayName = (_displayname == string.Empty ? _username : _displayname),
|
DisplayName = (_displayname == string.Empty ? _username : _displayname),
|
||||||
PhotoFileId = null
|
PhotoFileId = null,
|
||||||
|
Subject = _subject,
|
||||||
|
GraduationYear = _graduationYear
|
||||||
|
|
||||||
};
|
};
|
||||||
user = await UserService.AddUserAsync(user);
|
user = await UserService.AddUserAsync(user);
|
||||||
|
|
||||||
|
@ -2,10 +2,10 @@
|
|||||||
"RenderMode": "Interactive",
|
"RenderMode": "Interactive",
|
||||||
"Runtime": "Server",
|
"Runtime": "Server",
|
||||||
"Database": {
|
"Database": {
|
||||||
"DefaultDBType": ""
|
"DefaultDBType": "Oqtane.Database.Sqlite.SqliteDatabase, Oqtane.Database.Sqlite"
|
||||||
},
|
},
|
||||||
"ConnectionStrings": {
|
"ConnectionStrings": {
|
||||||
"DefaultConnection": ""
|
"DefaultConnection": "Data Source=Oqtane-202507152139.db;"
|
||||||
},
|
},
|
||||||
"Installation": {
|
"Installation": {
|
||||||
"DefaultAlias": "",
|
"DefaultAlias": "",
|
||||||
@ -54,5 +54,9 @@
|
|||||||
"LogLevel": {
|
"LogLevel": {
|
||||||
"Default": "Information"
|
"Default": "Information"
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
|
"InstallationId": "e0b3aaed-a33d-4756-bd08-a83403d0c437",
|
||||||
|
"InstallationVersion": "6.1.1",
|
||||||
|
"InstallationDate": "202507152140",
|
||||||
|
"PackageRegistryEmail": "ismail.hasimoglu@edu.szu.at"
|
||||||
}
|
}
|
@ -32,6 +32,10 @@ namespace Oqtane.Models
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Reference to a <see cref="File"/> containing the users photo.
|
/// Reference to a <see cref="File"/> containing the users photo.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
||||||
|
public string Subject { get; set; }
|
||||||
|
public int GraduationYear { get; set; }
|
||||||
|
|
||||||
public int? PhotoFileId { get; set; }
|
public int? PhotoFileId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
10
README.md
10
README.md
@ -1,4 +1,4 @@
|
|||||||
# Oqtane Framework
|
# Oqtane Framewo
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
@ -14,14 +14,6 @@ Oqtane is being developed based on some fundamental principles which are outline
|
|||||||
|
|
||||||
[6.1.1](https://github.com/oqtane/oqtane.framework/releases/tag/v6.1.1) was released on March 12, 2025 and is a maintenance release including 46 pull requests by 4 different contributors, pushing the total number of project commits all-time to over 6400. The Oqtane framework continues to evolve at a rapid pace to meet the needs of .NET developers.
|
[6.1.1](https://github.com/oqtane/oqtane.framework/releases/tag/v6.1.1) was released on March 12, 2025 and is a maintenance release including 46 pull requests by 4 different contributors, pushing the total number of project commits all-time to over 6400. The Oqtane framework continues to evolve at a rapid pace to meet the needs of .NET developers.
|
||||||
|
|
||||||
# Try It Now!
|
|
||||||
|
|
||||||
Microsoft's Public Cloud (requires an Azure account)
|
|
||||||
[](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2Foqtane%2Foqtane.framework%2Fmaster%2Fazuredeploy.json)
|
|
||||||
|
|
||||||
A free ASP.NET hosting account. No hidden fees. No credit card required.
|
|
||||||
[](https://www.monsterasp.net/)
|
|
||||||
|
|
||||||
# Getting Started (Version 6.1.1)
|
# Getting Started (Version 6.1.1)
|
||||||
|
|
||||||
**Installing using source code from the Dev/Master branch:**
|
**Installing using source code from the Dev/Master branch:**
|
||||||
|
Reference in New Issue
Block a user