Compare commits
No commits in common. 'f/formular-aufnahmeantrag' and 'master' have entirely different histories.
f/formular
...
master
87 changed files with 3 additions and 15552 deletions
@ -1,23 +0,0 @@ |
|||||||
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. |
|
||||||
|
|
||||||
# dependencies |
|
||||||
/node_modules |
|
||||||
/.pnp |
|
||||||
.pnp.js |
|
||||||
|
|
||||||
# testing |
|
||||||
/coverage |
|
||||||
|
|
||||||
# production |
|
||||||
/build |
|
||||||
|
|
||||||
# misc |
|
||||||
.DS_Store |
|
||||||
.env.local |
|
||||||
.env.development.local |
|
||||||
.env.test.local |
|
||||||
.env.production.local |
|
||||||
|
|
||||||
npm-debug.log* |
|
||||||
yarn-debug.log* |
|
||||||
yarn-error.log* |
|
||||||
@ -1,74 +0,0 @@ |
|||||||
stages: |
|
||||||
- build_docker |
|
||||||
- build_frontend |
|
||||||
|
|
||||||
|
|
||||||
build_frontend: |
|
||||||
stage: build_frontend |
|
||||||
tags: |
|
||||||
- docker |
|
||||||
image: registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-build |
|
||||||
before_script: |
|
||||||
- eval $(ssh-agent -s) |
|
||||||
- ssh-add <(echo "${DEPLOY_ENV_KEY}") |
|
||||||
- mkdir -p ~/.ssh |
|
||||||
- '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config' |
|
||||||
- cp -r Frontend/src/ /workdir/src/ |
|
||||||
- cp -r Frontend/public/ /workdir/public/ |
|
||||||
script: |
|
||||||
- pwd |
|
||||||
- ls -la |
|
||||||
- cd /workdir |
|
||||||
- npm run build |
|
||||||
- ls -la /workdir/build |
|
||||||
- ssh $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET "mkdir -p /home/$DEPLOY_ENV_USER/serve" |
|
||||||
- ssh $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET "rm -rf /home/$DEPLOY_ENV_USER/serve/*" |
|
||||||
- ssh $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET "mkdir -p /home/$DEPLOY_ENV_USER/serve/$CI_COMMIT_REF_NAME" |
|
||||||
- rsync --progress -av -e ssh /workdir/build/* $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET:/home/$DEPLOY_ENV_USER/serve/ |
|
||||||
only: |
|
||||||
changes: |
|
||||||
- Frontend/* |
|
||||||
environment: |
|
||||||
name: deploy |
|
||||||
url: https://$DEPLOY_ENV_TARGET |
|
||||||
|
|
||||||
build_docker_host: |
|
||||||
stage: build_docker |
|
||||||
tags: |
|
||||||
- docker-builder |
|
||||||
before_script: |
|
||||||
- eval $(ssh-agent -s) |
|
||||||
- ssh-add <(echo "${DEPLOY_ENV_KEY}") |
|
||||||
- mkdir -p ~/.ssh |
|
||||||
- echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config |
|
||||||
- docker info |
|
||||||
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY |
|
||||||
script: |
|
||||||
- docker build -f Docker/Dockerfile_FE_Host.dockerfile -t registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-serve . |
|
||||||
- docker push registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-serve |
|
||||||
- ls -la Docker/config/restart-host.sh |
|
||||||
- rsync --progress -av -e ssh Docker/config/restart-host.sh $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET:/home/$DEPLOY_ENV_USER/restart-host.sh |
|
||||||
- ssh $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET "./restart-host.sh" |
|
||||||
only: |
|
||||||
changes: |
|
||||||
- Docker/Dockerfile_FE_Host.dockerfile |
|
||||||
- Docker/config/* |
|
||||||
|
|
||||||
build_docker_builder: |
|
||||||
stage: build_docker |
|
||||||
tags: |
|
||||||
- docker-builder |
|
||||||
before_script: |
|
||||||
- docker info |
|
||||||
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY |
|
||||||
script: |
|
||||||
- docker build -f Docker/Dockerfile_FE_Builder.dockerfile -t registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-build . |
|
||||||
- docker push registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-build |
|
||||||
only: |
|
||||||
changes: |
|
||||||
- Docker/Dockerfile_FE_Builder.dockerfile |
|
||||||
- Docker/config/* |
|
||||||
- Frontend/package.json |
|
||||||
- Frontend/package-lock.json |
|
||||||
- .gitlab-ci.yml |
|
||||||
|
|
||||||
@ -1,9 +0,0 @@ |
|||||||
.dockerignore |
|
||||||
.env |
|
||||||
.git |
|
||||||
.gitignore |
|
||||||
.vs |
|
||||||
.vscode |
|
||||||
*/bin |
|
||||||
*/obj |
|
||||||
**/.toolstarget |
|
||||||
@ -1,348 +0,0 @@ |
|||||||
## Ignore Visual Studio temporary files, build results, and |
|
||||||
## files generated by popular Visual Studio add-ons. |
|
||||||
## |
|
||||||
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore |
|
||||||
|
|
||||||
# User-specific files |
|
||||||
*.rsuser |
|
||||||
*.suo |
|
||||||
*.user |
|
||||||
*.userosscache |
|
||||||
*.sln.docstates |
|
||||||
|
|
||||||
# User-specific files (MonoDevelop/Xamarin Studio) |
|
||||||
*.userprefs |
|
||||||
|
|
||||||
# Mono auto generated files |
|
||||||
mono_crash.* |
|
||||||
|
|
||||||
# Build results |
|
||||||
[Dd]ebug/ |
|
||||||
[Dd]ebugPublic/ |
|
||||||
[Rr]elease/ |
|
||||||
[Rr]eleases/ |
|
||||||
x64/ |
|
||||||
x86/ |
|
||||||
[Aa][Rr][Mm]/ |
|
||||||
[Aa][Rr][Mm]64/ |
|
||||||
bld/ |
|
||||||
[Bb]in/ |
|
||||||
[Oo]bj/ |
|
||||||
[Ll]og/ |
|
||||||
|
|
||||||
# Visual Studio 2015/2017 cache/options directory |
|
||||||
.vs/ |
|
||||||
# Uncomment if you have tasks that create the project's static files in wwwroot |
|
||||||
#wwwroot/ |
|
||||||
|
|
||||||
# Visual Studio 2017 auto generated files |
|
||||||
Generated\ Files/ |
|
||||||
|
|
||||||
# MSTest test Results |
|
||||||
[Tt]est[Rr]esult*/ |
|
||||||
[Bb]uild[Ll]og.* |
|
||||||
|
|
||||||
# NUNIT |
|
||||||
*.VisualState.xml |
|
||||||
TestResult.xml |
|
||||||
|
|
||||||
# Build Results of an ATL Project |
|
||||||
[Dd]ebugPS/ |
|
||||||
[Rr]eleasePS/ |
|
||||||
dlldata.c |
|
||||||
|
|
||||||
# Benchmark Results |
|
||||||
BenchmarkDotNet.Artifacts/ |
|
||||||
|
|
||||||
# .NET Core |
|
||||||
project.lock.json |
|
||||||
project.fragment.lock.json |
|
||||||
artifacts/ |
|
||||||
|
|
||||||
# StyleCop |
|
||||||
StyleCopReport.xml |
|
||||||
|
|
||||||
# Files built by Visual Studio |
|
||||||
*_i.c |
|
||||||
*_p.c |
|
||||||
*_h.h |
|
||||||
*.ilk |
|
||||||
*.meta |
|
||||||
*.obj |
|
||||||
*.iobj |
|
||||||
*.pch |
|
||||||
*.pdb |
|
||||||
*.ipdb |
|
||||||
*.pgc |
|
||||||
*.pgd |
|
||||||
*.rsp |
|
||||||
*.sbr |
|
||||||
*.tlb |
|
||||||
*.tli |
|
||||||
*.tlh |
|
||||||
*.tmp |
|
||||||
*.tmp_proj |
|
||||||
*_wpftmp.csproj |
|
||||||
*.log |
|
||||||
*.vspscc |
|
||||||
*.vssscc |
|
||||||
.builds |
|
||||||
*.pidb |
|
||||||
*.svclog |
|
||||||
*.scc |
|
||||||
|
|
||||||
# Chutzpah Test files |
|
||||||
_Chutzpah* |
|
||||||
|
|
||||||
# Visual C++ cache files |
|
||||||
ipch/ |
|
||||||
*.aps |
|
||||||
*.ncb |
|
||||||
*.opendb |
|
||||||
*.opensdf |
|
||||||
*.sdf |
|
||||||
*.cachefile |
|
||||||
*.VC.db |
|
||||||
*.VC.VC.opendb |
|
||||||
|
|
||||||
# Visual Studio profiler |
|
||||||
*.psess |
|
||||||
*.vsp |
|
||||||
*.vspx |
|
||||||
*.sap |
|
||||||
|
|
||||||
# Visual Studio Trace Files |
|
||||||
*.e2e |
|
||||||
|
|
||||||
# TFS 2012 Local Workspace |
|
||||||
$tf/ |
|
||||||
|
|
||||||
# Guidance Automation Toolkit |
|
||||||
*.gpState |
|
||||||
|
|
||||||
# ReSharper is a .NET coding add-in |
|
||||||
_ReSharper*/ |
|
||||||
*.[Rr]e[Ss]harper |
|
||||||
*.DotSettings.user |
|
||||||
|
|
||||||
# JustCode is a .NET coding add-in |
|
||||||
.JustCode |
|
||||||
|
|
||||||
# TeamCity is a build add-in |
|
||||||
_TeamCity* |
|
||||||
|
|
||||||
# DotCover is a Code Coverage Tool |
|
||||||
*.dotCover |
|
||||||
|
|
||||||
# AxoCover is a Code Coverage Tool |
|
||||||
.axoCover/* |
|
||||||
!.axoCover/settings.json |
|
||||||
|
|
||||||
# Visual Studio code coverage results |
|
||||||
*.coverage |
|
||||||
*.coveragexml |
|
||||||
|
|
||||||
# NCrunch |
|
||||||
_NCrunch_* |
|
||||||
.*crunch*.local.xml |
|
||||||
nCrunchTemp_* |
|
||||||
|
|
||||||
# MightyMoose |
|
||||||
*.mm.* |
|
||||||
AutoTest.Net/ |
|
||||||
|
|
||||||
# Web workbench (sass) |
|
||||||
.sass-cache/ |
|
||||||
|
|
||||||
# Installshield output folder |
|
||||||
[Ee]xpress/ |
|
||||||
|
|
||||||
# DocProject is a documentation generator add-in |
|
||||||
DocProject/buildhelp/ |
|
||||||
DocProject/Help/*.HxT |
|
||||||
DocProject/Help/*.HxC |
|
||||||
DocProject/Help/*.hhc |
|
||||||
DocProject/Help/*.hhk |
|
||||||
DocProject/Help/*.hhp |
|
||||||
DocProject/Help/Html2 |
|
||||||
DocProject/Help/html |
|
||||||
|
|
||||||
# Click-Once directory |
|
||||||
publish/ |
|
||||||
|
|
||||||
# Publish Web Output |
|
||||||
*.[Pp]ublish.xml |
|
||||||
*.azurePubxml |
|
||||||
# Note: Comment the next line if you want to checkin your web deploy settings, |
|
||||||
# but database connection strings (with potential passwords) will be unencrypted |
|
||||||
*.pubxml |
|
||||||
*.publishproj |
|
||||||
|
|
||||||
# Microsoft Azure Web App publish settings. Comment the next line if you want to |
|
||||||
# checkin your Azure Web App publish settings, but sensitive information contained |
|
||||||
# in these scripts will be unencrypted |
|
||||||
PublishScripts/ |
|
||||||
|
|
||||||
# NuGet Packages |
|
||||||
*.nupkg |
|
||||||
# NuGet Symbol Packages |
|
||||||
*.snupkg |
|
||||||
# The packages folder can be ignored because of Package Restore |
|
||||||
**/[Pp]ackages/* |
|
||||||
# except build/, which is used as an MSBuild target. |
|
||||||
!**/[Pp]ackages/build/ |
|
||||||
# Uncomment if necessary however generally it will be regenerated when needed |
|
||||||
#!**/[Pp]ackages/repositories.config |
|
||||||
# NuGet v3's project.json files produces more ignorable files |
|
||||||
*.nuget.props |
|
||||||
*.nuget.targets |
|
||||||
|
|
||||||
# Microsoft Azure Build Output |
|
||||||
csx/ |
|
||||||
*.build.csdef |
|
||||||
|
|
||||||
# Microsoft Azure Emulator |
|
||||||
ecf/ |
|
||||||
rcf/ |
|
||||||
|
|
||||||
# Windows Store app package directories and files |
|
||||||
AppPackages/ |
|
||||||
BundleArtifacts/ |
|
||||||
Package.StoreAssociation.xml |
|
||||||
_pkginfo.txt |
|
||||||
*.appx |
|
||||||
*.appxbundle |
|
||||||
*.appxupload |
|
||||||
|
|
||||||
# Visual Studio cache files |
|
||||||
# files ending in .cache can be ignored |
|
||||||
*.[Cc]ache |
|
||||||
# but keep track of directories ending in .cache |
|
||||||
!?*.[Cc]ache/ |
|
||||||
|
|
||||||
# Others |
|
||||||
ClientBin/ |
|
||||||
~$* |
|
||||||
*~ |
|
||||||
*.dbmdl |
|
||||||
*.dbproj.schemaview |
|
||||||
*.jfm |
|
||||||
*.pfx |
|
||||||
*.publishsettings |
|
||||||
orleans.codegen.cs |
|
||||||
|
|
||||||
# Including strong name files can present a security risk |
|
||||||
# (https://github.com/github/gitignore/pull/2483#issue-259490424) |
|
||||||
#*.snk |
|
||||||
|
|
||||||
# Since there are multiple workflows, uncomment next line to ignore bower_components |
|
||||||
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) |
|
||||||
#bower_components/ |
|
||||||
|
|
||||||
# RIA/Silverlight projects |
|
||||||
Generated_Code/ |
|
||||||
|
|
||||||
# Backup & report files from converting an old project file |
|
||||||
# to a newer Visual Studio version. Backup files are not needed, |
|
||||||
# because we have git ;-) |
|
||||||
_UpgradeReport_Files/ |
|
||||||
Backup*/ |
|
||||||
UpgradeLog*.XML |
|
||||||
UpgradeLog*.htm |
|
||||||
ServiceFabricBackup/ |
|
||||||
*.rptproj.bak |
|
||||||
|
|
||||||
# SQL Server files |
|
||||||
*.mdf |
|
||||||
*.ldf |
|
||||||
*.ndf |
|
||||||
|
|
||||||
# Business Intelligence projects |
|
||||||
*.rdl.data |
|
||||||
*.bim.layout |
|
||||||
*.bim_*.settings |
|
||||||
*.rptproj.rsuser |
|
||||||
*- [Bb]ackup.rdl |
|
||||||
*- [Bb]ackup ([0-9]).rdl |
|
||||||
*- [Bb]ackup ([0-9][0-9]).rdl |
|
||||||
|
|
||||||
# Microsoft Fakes |
|
||||||
FakesAssemblies/ |
|
||||||
|
|
||||||
# GhostDoc plugin setting file |
|
||||||
*.GhostDoc.xml |
|
||||||
|
|
||||||
# Node.js Tools for Visual Studio |
|
||||||
.ntvs_analysis.dat |
|
||||||
node_modules/ |
|
||||||
|
|
||||||
# Visual Studio 6 build log |
|
||||||
*.plg |
|
||||||
|
|
||||||
# Visual Studio 6 workspace options file |
|
||||||
*.opt |
|
||||||
|
|
||||||
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) |
|
||||||
*.vbw |
|
||||||
|
|
||||||
# Visual Studio LightSwitch build output |
|
||||||
**/*.HTMLClient/GeneratedArtifacts |
|
||||||
**/*.DesktopClient/GeneratedArtifacts |
|
||||||
**/*.DesktopClient/ModelManifest.xml |
|
||||||
**/*.Server/GeneratedArtifacts |
|
||||||
**/*.Server/ModelManifest.xml |
|
||||||
_Pvt_Extensions |
|
||||||
|
|
||||||
# Paket dependency manager |
|
||||||
.paket/paket.exe |
|
||||||
paket-files/ |
|
||||||
|
|
||||||
# FAKE - F# Make |
|
||||||
.fake/ |
|
||||||
|
|
||||||
# CodeRush personal settings |
|
||||||
.cr/personal |
|
||||||
|
|
||||||
# Python Tools for Visual Studio (PTVS) |
|
||||||
__pycache__/ |
|
||||||
*.pyc |
|
||||||
|
|
||||||
# Cake - Uncomment if you are using it |
|
||||||
# tools/** |
|
||||||
# !tools/packages.config |
|
||||||
|
|
||||||
# Tabs Studio |
|
||||||
*.tss |
|
||||||
|
|
||||||
# Telerik's JustMock configuration file |
|
||||||
*.jmconfig |
|
||||||
|
|
||||||
# BizTalk build output |
|
||||||
*.btp.cs |
|
||||||
*.btm.cs |
|
||||||
*.odx.cs |
|
||||||
*.xsd.cs |
|
||||||
|
|
||||||
# OpenCover UI analysis results |
|
||||||
OpenCover/ |
|
||||||
|
|
||||||
# Azure Stream Analytics local run output |
|
||||||
ASALocalRun/ |
|
||||||
|
|
||||||
# MSBuild Binary and Structured Log |
|
||||||
*.binlog |
|
||||||
|
|
||||||
# NVidia Nsight GPU debugger configuration file |
|
||||||
*.nvuser |
|
||||||
|
|
||||||
# MFractors (Xamarin productivity tool) working folder |
|
||||||
.mfractor/ |
|
||||||
|
|
||||||
# Local History for Visual Studio |
|
||||||
.localhistory/ |
|
||||||
|
|
||||||
# BeatPulse healthcheck temp database |
|
||||||
healthchecksdb |
|
||||||
|
|
||||||
# Backup folder for Package Reference Convert tool in Visual Studio 2017 |
|
||||||
MigrationBackup/ |
|
||||||
@ -1,25 +0,0 @@ |
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 12.00 |
|
||||||
# Visual Studio Version 16 |
|
||||||
VisualStudioVersion = 16.0.28803.156 |
|
||||||
MinimumVisualStudioVersion = 10.0.40219.1 |
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EVABackend", "EVABackend\EVABackend.csproj", "{35629A48-394C-4EE6-B853-1B92641B9FED}" |
|
||||||
EndProject |
|
||||||
Global |
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution |
|
||||||
Debug|Any CPU = Debug|Any CPU |
|
||||||
Release|Any CPU = Release|Any CPU |
|
||||||
EndGlobalSection |
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution |
|
||||||
{35629A48-394C-4EE6-B853-1B92641B9FED}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
|
||||||
{35629A48-394C-4EE6-B853-1B92641B9FED}.Debug|Any CPU.Build.0 = Debug|Any CPU |
|
||||||
{35629A48-394C-4EE6-B853-1B92641B9FED}.Release|Any CPU.ActiveCfg = Release|Any CPU |
|
||||||
{35629A48-394C-4EE6-B853-1B92641B9FED}.Release|Any CPU.Build.0 = Release|Any CPU |
|
||||||
EndGlobalSection |
|
||||||
GlobalSection(SolutionProperties) = preSolution |
|
||||||
HideSolutionNode = FALSE |
|
||||||
EndGlobalSection |
|
||||||
GlobalSection(ExtensibilityGlobals) = postSolution |
|
||||||
SolutionGuid = {9D649B10-EA35-49B9-BCB5-A989D21D6832} |
|
||||||
EndGlobalSection |
|
||||||
EndGlobal |
|
||||||
@ -1,45 +0,0 @@ |
|||||||
using System; |
|
||||||
using System.Collections.Generic; |
|
||||||
using System.Linq; |
|
||||||
using System.Threading.Tasks; |
|
||||||
using Microsoft.AspNetCore.Mvc; |
|
||||||
|
|
||||||
namespace EVABackend.Controllers |
|
||||||
{ |
|
||||||
[Route("api/[controller]")]
|
|
||||||
[ApiController] |
|
||||||
public class ValuesController : ControllerBase |
|
||||||
{ |
|
||||||
// GET api/values |
|
||||||
[HttpGet] |
|
||||||
public ActionResult<IEnumerable<string>> Get() |
|
||||||
{ |
|
||||||
return new string[] { "value1", "value2" }; |
|
||||||
} |
|
||||||
|
|
||||||
// GET api/values/5 |
|
||||||
[HttpGet("{id}")] |
|
||||||
public ActionResult<string> Get(int id) |
|
||||||
{ |
|
||||||
return "value"; |
|
||||||
} |
|
||||||
|
|
||||||
// POST api/values |
|
||||||
[HttpPost] |
|
||||||
public void Post([FromBody] string value) |
|
||||||
{ |
|
||||||
} |
|
||||||
|
|
||||||
// PUT api/values/5 |
|
||||||
[HttpPut("{id}")] |
|
||||||
public void Put(int id, [FromBody] string value) |
|
||||||
{ |
|
||||||
} |
|
||||||
|
|
||||||
// DELETE api/values/5 |
|
||||||
[HttpDelete("{id}")] |
|
||||||
public void Delete(int id) |
|
||||||
{ |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
@ -1,20 +0,0 @@ |
|||||||
FROM mcr.microsoft.com/dotnet/core/aspnet:2.1-stretch-slim AS base |
|
||||||
WORKDIR /app |
|
||||||
EXPOSE 80 |
|
||||||
EXPOSE 443 |
|
||||||
|
|
||||||
FROM mcr.microsoft.com/dotnet/core/sdk:2.1-stretch AS build |
|
||||||
WORKDIR /src |
|
||||||
COPY ["EVABackend.csproj", "EVABackend/"] |
|
||||||
RUN dotnet restore "EVABackend/EVABackend.csproj" |
|
||||||
COPY . . |
|
||||||
WORKDIR "/src/EVABackend" |
|
||||||
RUN dotnet build "EVABackend.csproj" -c Release -o /app |
|
||||||
|
|
||||||
FROM build AS publish |
|
||||||
RUN dotnet publish "EVABackend.csproj" -c Release -o /app |
|
||||||
|
|
||||||
FROM base AS final |
|
||||||
WORKDIR /app |
|
||||||
COPY --from=publish /app . |
|
||||||
ENTRYPOINT ["dotnet", "EVABackend.dll"] |
|
||||||
@ -1,20 +0,0 @@ |
|||||||
<Project Sdk="Microsoft.NET.Sdk.Web"> |
|
||||||
|
|
||||||
<PropertyGroup> |
|
||||||
<TargetFramework>netcoreapp2.1</TargetFramework> |
|
||||||
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS> |
|
||||||
<UserSecretsId>81a3ba40-5295-4382-9a09-5339b5d22d08</UserSecretsId> |
|
||||||
</PropertyGroup> |
|
||||||
|
|
||||||
<ItemGroup> |
|
||||||
<Folder Include="wwwroot\" /> |
|
||||||
</ItemGroup> |
|
||||||
|
|
||||||
<ItemGroup> |
|
||||||
<PackageReference Include="Microsoft.AspNetCore.App" /> |
|
||||||
<PackageReference Include="Microsoft.AspNetCore.Razor.Design" Version="2.1.1" PrivateAssets="All" /> |
|
||||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="2.1.8" /> |
|
||||||
<PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.7.8" /> |
|
||||||
</ItemGroup> |
|
||||||
|
|
||||||
</Project> |
|
||||||
@ -1,24 +0,0 @@ |
|||||||
using System; |
|
||||||
using System.Collections.Generic; |
|
||||||
using System.IO; |
|
||||||
using System.Linq; |
|
||||||
using System.Threading.Tasks; |
|
||||||
using Microsoft.AspNetCore; |
|
||||||
using Microsoft.AspNetCore.Hosting; |
|
||||||
using Microsoft.Extensions.Configuration; |
|
||||||
using Microsoft.Extensions.Logging; |
|
||||||
|
|
||||||
namespace EVABackend |
|
||||||
{ |
|
||||||
public class Program |
|
||||||
{ |
|
||||||
public static void Main(string[] args) |
|
||||||
{ |
|
||||||
CreateWebHostBuilder(args).Build().Run(); |
|
||||||
} |
|
||||||
|
|
||||||
public static IWebHostBuilder CreateWebHostBuilder(string[] args) => |
|
||||||
WebHost.CreateDefaultBuilder(args) |
|
||||||
.UseStartup<Startup>(); |
|
||||||
} |
|
||||||
} |
|
||||||
@ -1,38 +0,0 @@ |
|||||||
{ |
|
||||||
"iisSettings": { |
|
||||||
"windowsAuthentication": false, |
|
||||||
"anonymousAuthentication": true, |
|
||||||
"iisExpress": { |
|
||||||
"applicationUrl": "http://localhost:50570", |
|
||||||
"sslPort": 44374 |
|
||||||
} |
|
||||||
}, |
|
||||||
"$schema": "http://json.schemastore.org/launchsettings.json", |
|
||||||
"profiles": { |
|
||||||
"IIS Express": { |
|
||||||
"commandName": "IISExpress", |
|
||||||
"launchBrowser": true, |
|
||||||
"launchUrl": "api/values", |
|
||||||
"environmentVariables": { |
|
||||||
"ASPNETCORE_ENVIRONMENT": "Development" |
|
||||||
} |
|
||||||
}, |
|
||||||
"EVABackend": { |
|
||||||
"commandName": "Project", |
|
||||||
"launchBrowser": true, |
|
||||||
"launchUrl": "api/values", |
|
||||||
"environmentVariables": { |
|
||||||
"ASPNETCORE_ENVIRONMENT": "Development" |
|
||||||
}, |
|
||||||
"applicationUrl": "https://localhost:5001;http://localhost:5000" |
|
||||||
}, |
|
||||||
"Docker": { |
|
||||||
"commandName": "Docker", |
|
||||||
"launchBrowser": true, |
|
||||||
"launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}/api/values", |
|
||||||
"httpPort": 50571, |
|
||||||
"useSSL": true, |
|
||||||
"sslPort": 44375 |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
@ -1,47 +0,0 @@ |
|||||||
using System; |
|
||||||
using System.Collections.Generic; |
|
||||||
using System.Linq; |
|
||||||
using System.Threading.Tasks; |
|
||||||
using Microsoft.AspNetCore.Builder; |
|
||||||
using Microsoft.AspNetCore.Hosting; |
|
||||||
using Microsoft.AspNetCore.HttpsPolicy; |
|
||||||
using Microsoft.AspNetCore.Mvc; |
|
||||||
using Microsoft.Extensions.Configuration; |
|
||||||
using Microsoft.Extensions.DependencyInjection; |
|
||||||
using Microsoft.Extensions.Logging; |
|
||||||
using Microsoft.Extensions.Options; |
|
||||||
|
|
||||||
namespace EVABackend |
|
||||||
{ |
|
||||||
public class Startup |
|
||||||
{ |
|
||||||
public Startup(IConfiguration configuration) |
|
||||||
{ |
|
||||||
Configuration = configuration; |
|
||||||
} |
|
||||||
|
|
||||||
public IConfiguration Configuration { get; } |
|
||||||
|
|
||||||
// This method gets called by the runtime. Use this method to add services to the container. |
|
||||||
public void ConfigureServices(IServiceCollection services) |
|
||||||
{ |
|
||||||
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1); |
|
||||||
} |
|
||||||
|
|
||||||
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. |
|
||||||
public void Configure(IApplicationBuilder app, IHostingEnvironment env) |
|
||||||
{ |
|
||||||
if (env.IsDevelopment()) |
|
||||||
{ |
|
||||||
app.UseDeveloperExceptionPage(); |
|
||||||
} |
|
||||||
else |
|
||||||
{ |
|
||||||
app.UseHsts(); |
|
||||||
} |
|
||||||
|
|
||||||
app.UseHttpsRedirection(); |
|
||||||
app.UseMvc(); |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
@ -1,9 +0,0 @@ |
|||||||
{ |
|
||||||
"Logging": { |
|
||||||
"LogLevel": { |
|
||||||
"Default": "Debug", |
|
||||||
"System": "Information", |
|
||||||
"Microsoft": "Information" |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
@ -1,8 +0,0 @@ |
|||||||
{ |
|
||||||
"Logging": { |
|
||||||
"LogLevel": { |
|
||||||
"Default": "Warning" |
|
||||||
} |
|
||||||
}, |
|
||||||
"AllowedHosts": "*" |
|
||||||
} |
|
||||||
@ -1,15 +0,0 @@ |
|||||||
# Tag: frontend-build |
|
||||||
|
|
||||||
FROM node:10.8-stretch |
|
||||||
RUN apt update |
|
||||||
RUN apt install -y rsync |
|
||||||
RUN mkdir -p /workdir |
|
||||||
COPY Frontend/package.json /workdir/package.json |
|
||||||
COPY Frontend/package-lock.json /workdir/package-lock.json |
|
||||||
|
|
||||||
WORKDIR /workdir |
|
||||||
|
|
||||||
RUN pwd && ls -la |
|
||||||
|
|
||||||
run npm install |
|
||||||
|
|
||||||
@ -1,14 +0,0 @@ |
|||||||
# Tag: frontend-serve |
|
||||||
|
|
||||||
# FROM nginx |
|
||||||
|
|
||||||
# COPY Docker/config/nginx.conf /etc/nginx/nginx.conf |
|
||||||
|
|
||||||
FROM node:10.8-stretch |
|
||||||
WORKDIR /opt/frontend |
|
||||||
|
|
||||||
RUN pwd && ls -la |
|
||||||
|
|
||||||
RUN npm install -g serve |
|
||||||
|
|
||||||
CMD ["serve", "-s", "build"] |
|
||||||
@ -1,14 +0,0 @@ |
|||||||
events { |
|
||||||
worker_connections 1024; |
|
||||||
} |
|
||||||
|
|
||||||
http { |
|
||||||
server { |
|
||||||
listen 80; |
|
||||||
root /usr/share/nginx/html; |
|
||||||
|
|
||||||
location / { |
|
||||||
autoindex on; |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
@ -1,7 +0,0 @@ |
|||||||
#! /bin/bash |
|
||||||
docker login -u gitlab+deploy-token-66068 -p vD23SzzitUn8y8xGknKz registry.gitlab.com |
|
||||||
docker stop eva_frontend_serve |
|
||||||
docker rm eva_frontend_serve |
|
||||||
docker rmi registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-serve |
|
||||||
docker run -d -p 8083:5000 -v /home/gitlab/serve:/opt/frontend/build:ro --name "eva_frontend_serve" registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-serve |
|
||||||
|
|
||||||
@ -1,23 +0,0 @@ |
|||||||
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. |
|
||||||
|
|
||||||
# dependencies |
|
||||||
/node_modules |
|
||||||
/.pnp |
|
||||||
.pnp.js |
|
||||||
|
|
||||||
# testing |
|
||||||
/coverage |
|
||||||
|
|
||||||
# production |
|
||||||
/build |
|
||||||
|
|
||||||
# misc |
|
||||||
.DS_Store |
|
||||||
.env.local |
|
||||||
.env.development.local |
|
||||||
.env.test.local |
|
||||||
.env.production.local |
|
||||||
|
|
||||||
npm-debug.log* |
|
||||||
yarn-debug.log* |
|
||||||
yarn-error.log* |
|
||||||
@ -1,7 +0,0 @@ |
|||||||
# React App für die EVA_Lernsituatuin |
|
||||||
|
|
||||||
# Pakages |
|
||||||
|
|
||||||
- Material UI |
|
||||||
- React Router |
|
||||||
- Sentry |
|
||||||
@ -1,12 +0,0 @@ |
|||||||
<!DOCTYPE html> |
|
||||||
<html lang="en"> |
|
||||||
<head> |
|
||||||
<meta charset="UTF-8"> |
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|
||||||
<meta http-equiv="X-UA-Compatible" content="ie=edge"> |
|
||||||
<title>Temporäre Seite</title> |
|
||||||
</head> |
|
||||||
<body> |
|
||||||
Hallo bitte geh weg. |
|
||||||
</body> |
|
||||||
</html> |
|
||||||
File diff suppressed because it is too large
Load Diff
@ -1,34 +0,0 @@ |
|||||||
{ |
|
||||||
"name": "lernsituation", |
|
||||||
"version": "0.1.0", |
|
||||||
"private": true, |
|
||||||
"dependencies": { |
|
||||||
"@material-ui/core": "^4.0.2", |
|
||||||
"@material-ui/icons": "^4.0.1", |
|
||||||
"react": "^16.8.6", |
|
||||||
"react-dom": "^16.8.6", |
|
||||||
"react-router-dom": "^5.0.0", |
|
||||||
"react-scripts": "3.0.0" |
|
||||||
}, |
|
||||||
"scripts": { |
|
||||||
"start": "react-scripts start", |
|
||||||
"build": "react-scripts build", |
|
||||||
"test": "react-scripts test", |
|
||||||
"eject": "react-scripts eject" |
|
||||||
}, |
|
||||||
"eslintConfig": { |
|
||||||
"extends": "react-app" |
|
||||||
}, |
|
||||||
"browserslist": { |
|
||||||
"production": [ |
|
||||||
">0.2%", |
|
||||||
"not dead", |
|
||||||
"not op_mini all" |
|
||||||
], |
|
||||||
"development": [ |
|
||||||
"last 1 chrome version", |
|
||||||
"last 1 firefox version", |
|
||||||
"last 1 safari version" |
|
||||||
] |
|
||||||
} |
|
||||||
} |
|
||||||
|
Before Width: | Height: | Size: 3.8 KiB |
@ -1,18 +0,0 @@ |
|||||||
<!DOCTYPE html> |
|
||||||
<html lang="de"> |
|
||||||
<head> |
|
||||||
<meta charset="utf-8" /> |
|
||||||
<link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico" /> |
|
||||||
<meta |
|
||||||
name="viewport" |
|
||||||
content="minimum-scale=1, initial-scale=1, width=device-width, shrink-to-fit=no" |
|
||||||
/> |
|
||||||
<meta name="theme-color" content="#000000" /> |
|
||||||
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" /> |
|
||||||
<title>Lernsituation</title> |
|
||||||
</head> |
|
||||||
<body> |
|
||||||
<noscript>You need to enable JavaScript to run this app.</noscript> |
|
||||||
<div id="root"></div> |
|
||||||
</body> |
|
||||||
</html> |
|
||||||
@ -1,15 +0,0 @@ |
|||||||
{ |
|
||||||
"short_name": "Lernsituation", |
|
||||||
"name": "EVA_Lernsituation", |
|
||||||
"icons": [ |
|
||||||
{ |
|
||||||
"src": "favicon.ico", |
|
||||||
"sizes": "64x64 32x32 24x24 16x16", |
|
||||||
"type": "image/x-icon" |
|
||||||
} |
|
||||||
], |
|
||||||
"start_url": ".", |
|
||||||
"display": "standalone", |
|
||||||
"theme_color": "#000000", |
|
||||||
"background_color": "#ffffff" |
|
||||||
} |
|
||||||
@ -1,37 +0,0 @@ |
|||||||
import React, { Component } from "react"; |
|
||||||
import CssBaseline from "@material-ui/core/CssBaseline"; |
|
||||||
import { BrowserRouter as Router, Route } from "react-router-dom"; |
|
||||||
import Login from "./Login.js"; |
|
||||||
import { Box } from "@material-ui/core"; |
|
||||||
import Aufnahmeantrag from "./Aufnahmeantrag.js"; |
|
||||||
import { createMuiTheme, MuiThemeProvider } from "@material-ui/core"; |
|
||||||
import { green, yellow } from "@material-ui/core/colors"; |
|
||||||
|
|
||||||
const theme = createMuiTheme({ |
|
||||||
palette: { |
|
||||||
primary: { main: "#2e294e" }, |
|
||||||
grey: { main: "#595959" }, |
|
||||||
danger: { main: "#d90368" }, |
|
||||||
secondary: { main: "#eadeda" }, |
|
||||||
text: { main: "#ffffff" } |
|
||||||
} |
|
||||||
}); |
|
||||||
|
|
||||||
class App extends Component { |
|
||||||
state = {}; |
|
||||||
render() { |
|
||||||
return ( |
|
||||||
<MuiThemeProvider theme={theme}> |
|
||||||
<CssBaseline /> |
|
||||||
<Router> |
|
||||||
<Box flexDirection="column" width="100%"> |
|
||||||
<Route path="/login" component={Login} /> |
|
||||||
<Route path="/aufnahmeantrag" component={Aufnahmeantrag} /> |
|
||||||
</Box> |
|
||||||
</Router> |
|
||||||
</MuiThemeProvider> |
|
||||||
); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
export default App; |
|
||||||
@ -1,376 +0,0 @@ |
|||||||
import React, { Component } from "react"; |
|
||||||
import { |
|
||||||
FormControlLabel, |
|
||||||
Checkbox, |
|
||||||
TextField, |
|
||||||
Typography, |
|
||||||
Grid, |
|
||||||
Fab, |
|
||||||
Container, |
|
||||||
FormControl, |
|
||||||
InputLabel, |
|
||||||
MenuItem, |
|
||||||
Select, |
|
||||||
OutlinedInput |
|
||||||
} from "@material-ui/core"; |
|
||||||
import SendIcon from "@material-ui/icons/Send"; |
|
||||||
import { withStyles, createStyles } from "@material-ui/core/styles"; |
|
||||||
|
|
||||||
const useStyles = createStyles(theme => ({ |
|
||||||
textField: { |
|
||||||
margingLeft: theme.spacing(1), |
|
||||||
marginRight: theme.spacing(1) |
|
||||||
}, |
|
||||||
fab: { |
|
||||||
margin: theme.spacing(1) |
|
||||||
}, |
|
||||||
form: { |
|
||||||
backgroundColor: "rgba(255, 255, 255, 1)", |
|
||||||
borderRadius: "5px", |
|
||||||
margin: "20px", |
|
||||||
padding: "20px", |
|
||||||
boxShadow: "0px 0px 5px 0px lightgrey", |
|
||||||
border: "1px solid lightgrey" |
|
||||||
}, |
|
||||||
checkbox: { |
|
||||||
display: "flex", |
|
||||||
alignItems: "center", |
|
||||||
height: "100%", |
|
||||||
marginLeft: "7px" |
|
||||||
}, |
|
||||||
instruments: { |
|
||||||
border: "1px solid #bbb", |
|
||||||
borderRadius: "5px", |
|
||||||
display: "flex", |
|
||||||
flexWrap: "wrap", |
|
||||||
padding: "10px" |
|
||||||
} |
|
||||||
})); |
|
||||||
|
|
||||||
class Aufnahmeantrag extends Component { |
|
||||||
state = { |
|
||||||
form: { |
|
||||||
Name: "", |
|
||||||
Vorname: "", |
|
||||||
Geburtsdatum: "", |
|
||||||
Geburtsort: "", |
|
||||||
PLZ: "", |
|
||||||
Ort: "", |
|
||||||
Strasse: "", |
|
||||||
Hausnummer: "", |
|
||||||
Telefon: "", |
|
||||||
EMail: "", |
|
||||||
BLZ: "", |
|
||||||
Bankname: "", |
|
||||||
KontoNr: "", |
|
||||||
Instrument: [], |
|
||||||
Ermaessigt: null, |
|
||||||
Laufzeit: "", |
|
||||||
Typ: "" |
|
||||||
}, |
|
||||||
instruments: [ |
|
||||||
{ name: "Gitarre", toggle: false }, |
|
||||||
{ name: "Schlagzeug", toggle: false }, |
|
||||||
{ name: "Flöte", toggle: false }, |
|
||||||
{ name: "Trompete", toggle: false }, |
|
||||||
{ name: "Banjo", toggle: false }, |
|
||||||
{ name: "Klavier", toggle: false }, |
|
||||||
{ name: "Orgel", toggle: false }, |
|
||||||
{ name: "Kazoo", toggle: false } |
|
||||||
] |
|
||||||
}; |
|
||||||
|
|
||||||
handleChange = name => event => { |
|
||||||
this.setState({ form: { ...this.state.form, [name]: event.target.value } }); |
|
||||||
}; |
|
||||||
|
|
||||||
handleInstrument = instrument => { |
|
||||||
var instruments = this.state.instruments; |
|
||||||
var instrumentsArray = []; |
|
||||||
instruments.forEach(obj => { |
|
||||||
if (obj === instrument) obj.toggle = !obj.toggle; |
|
||||||
if (obj.toggle === true) instrumentsArray.push(obj.name); |
|
||||||
}); |
|
||||||
this.setState({ |
|
||||||
form: { ...this.state.form, Instrument: instrumentsArray } |
|
||||||
}); |
|
||||||
this.setState({ instruments }); |
|
||||||
}; |
|
||||||
|
|
||||||
render() { |
|
||||||
const classes = this.props.classes; |
|
||||||
|
|
||||||
return ( |
|
||||||
<Container maxWidth="md"> |
|
||||||
<div className={classes.form}> |
|
||||||
<Grid container direction="row" justify="center" alignItems="center"> |
|
||||||
<Grid container spacing={1}> |
|
||||||
<Grid item xs={12}> |
|
||||||
<Typography align="center" variant="h4"> |
|
||||||
Aufnahmeantrag |
|
||||||
</Typography> |
|
||||||
</Grid> |
|
||||||
<Grid item sm={6} xs={12}> |
|
||||||
<TextField |
|
||||||
fullWidth={true} |
|
||||||
id="outlined-name" |
|
||||||
label="Name" |
|
||||||
className={classes.textField} |
|
||||||
value={this.state.form.Name} |
|
||||||
onChange={this.handleChange("Name")} |
|
||||||
margin="normal" |
|
||||||
variant="outlined" |
|
||||||
/> |
|
||||||
</Grid> |
|
||||||
<Grid item sm={6} xs={12}> |
|
||||||
<TextField |
|
||||||
fullWidth={true} |
|
||||||
id="outlined-name" |
|
||||||
label="Vorname" |
|
||||||
className={classes.textField} |
|
||||||
value={this.state.form.Vorname} |
|
||||||
onChange={this.handleChange("Vorname")} |
|
||||||
margin="normal" |
|
||||||
variant="outlined" |
|
||||||
/> |
|
||||||
</Grid> |
|
||||||
<Grid item sm={6} xs={12}> |
|
||||||
<TextField |
|
||||||
fullWidth={true} |
|
||||||
id="outlined-name" |
|
||||||
label="Geburtsdatum" |
|
||||||
className={classes.textField} |
|
||||||
value={this.state.form.Geburtsdatum} |
|
||||||
onChange={this.handleChange("Geburtsdatum")} |
|
||||||
margin="normal" |
|
||||||
variant="outlined" |
|
||||||
/> |
|
||||||
</Grid> |
|
||||||
<Grid item sm={6} xs={12}> |
|
||||||
<TextField |
|
||||||
fullWidth={true} |
|
||||||
id="outlined-name" |
|
||||||
label="Geburtsort" |
|
||||||
className={classes.textField} |
|
||||||
value={this.state.form.Geburtsort} |
|
||||||
onChange={this.handleChange("Geburtsort")} |
|
||||||
margin="normal" |
|
||||||
variant="outlined" |
|
||||||
/> |
|
||||||
</Grid> |
|
||||||
<Grid item sm={6} xs={12}> |
|
||||||
<TextField |
|
||||||
fullWidth={true} |
|
||||||
id="outlined-name" |
|
||||||
label="PLZ" |
|
||||||
className={classes.textField} |
|
||||||
value={this.state.form.PLZ} |
|
||||||
onChange={this.handleChange("PLZ")} |
|
||||||
margin="normal" |
|
||||||
variant="outlined" |
|
||||||
/> |
|
||||||
</Grid> |
|
||||||
<Grid item sm={6} xs={12}> |
|
||||||
<TextField |
|
||||||
fullWidth={true} |
|
||||||
id="outlined-name" |
|
||||||
label="Ort" |
|
||||||
className={classes.textField} |
|
||||||
value={this.state.form.Ort} |
|
||||||
onChange={this.handleChange("Ort")} |
|
||||||
margin="normal" |
|
||||||
variant="outlined" |
|
||||||
/> |
|
||||||
</Grid> |
|
||||||
<Grid item sm={6} xs={12}> |
|
||||||
<TextField |
|
||||||
fullWidth={true} |
|
||||||
id="outlined-name" |
|
||||||
label="Strasse" |
|
||||||
className={classes.textField} |
|
||||||
value={this.state.form.Strasse} |
|
||||||
onChange={this.handleChange("Strasse")} |
|
||||||
margin="normal" |
|
||||||
variant="outlined" |
|
||||||
/> |
|
||||||
</Grid> |
|
||||||
<Grid item sm={6} xs={12}> |
|
||||||
<TextField |
|
||||||
fullWidth={true} |
|
||||||
id="outlined-name" |
|
||||||
label="Hausnummer" |
|
||||||
className={classes.textField} |
|
||||||
value={this.state.form.Hausnummer} |
|
||||||
onChange={this.handleChange("Hausnummer")} |
|
||||||
margin="normal" |
|
||||||
variant="outlined" |
|
||||||
/> |
|
||||||
</Grid> |
|
||||||
<Grid item sm={6} xs={12}> |
|
||||||
<TextField |
|
||||||
fullWidth={true} |
|
||||||
id="outlined-name" |
|
||||||
label="Telefon" |
|
||||||
className={classes.textField} |
|
||||||
value={this.state.form.Telefon} |
|
||||||
onChange={this.handleChange("Telefon")} |
|
||||||
margin="normal" |
|
||||||
variant="outlined" |
|
||||||
/> |
|
||||||
</Grid> |
|
||||||
<Grid item sm={6} xs={12}> |
|
||||||
<TextField |
|
||||||
fullWidth={true} |
|
||||||
id="outlined-name" |
|
||||||
label="EMail" |
|
||||||
className={classes.textField} |
|
||||||
value={this.state.form.EMail} |
|
||||||
onChange={this.handleChange("EMail")} |
|
||||||
margin="normal" |
|
||||||
variant="outlined" |
|
||||||
/> |
|
||||||
</Grid> |
|
||||||
<Grid item sm={12} xs={12}> |
|
||||||
<Typography align="left" variant="h6"> |
|
||||||
Instrumente |
|
||||||
</Typography> |
|
||||||
<div className={classes.instruments}> |
|
||||||
{this.state.instruments.map(instrument => ( |
|
||||||
<FormControlLabel |
|
||||||
key={instrument.name} |
|
||||||
control={ |
|
||||||
<Checkbox |
|
||||||
checked={instrument.toggle} |
|
||||||
onChange={() => this.handleInstrument(instrument)} |
|
||||||
value={instrument.name} |
|
||||||
color="primary" |
|
||||||
/> |
|
||||||
} |
|
||||||
label={instrument.name} |
|
||||||
/> |
|
||||||
))} |
|
||||||
</div> |
|
||||||
</Grid> |
|
||||||
<Grid item sm={6} xs={12}> |
|
||||||
<FormControl |
|
||||||
margin="normal" |
|
||||||
fullWidth={true} |
|
||||||
variant="outlined" |
|
||||||
className={classes.textField} |
|
||||||
> |
|
||||||
<InputLabel htmlFor="outlined-laufzeit-simple"> |
|
||||||
Laufzeit |
|
||||||
</InputLabel> |
|
||||||
<Select |
|
||||||
value={this.state.form.Laufzeit} |
|
||||||
onChange={this.handleChange("Laufzeit")} |
|
||||||
input={ |
|
||||||
<OutlinedInput |
|
||||||
labelWidth={60} |
|
||||||
name="laufzeit" |
|
||||||
id="outlined-laufzeit-simple" |
|
||||||
/> |
|
||||||
} |
|
||||||
> |
|
||||||
<MenuItem value={6}>6 Monate</MenuItem> |
|
||||||
<MenuItem value={12}>12 Monate</MenuItem> |
|
||||||
</Select> |
|
||||||
</FormControl> |
|
||||||
</Grid> |
|
||||||
<Grid item sm={6} xs={12}> |
|
||||||
<FormControl |
|
||||||
margin="normal" |
|
||||||
fullWidth={true} |
|
||||||
variant="outlined" |
|
||||||
className={classes.textField} |
|
||||||
> |
|
||||||
<InputLabel htmlFor="outlined-laufzeit-simple"> |
|
||||||
Unterichtstyp |
|
||||||
</InputLabel> |
|
||||||
<Select |
|
||||||
value={this.state.form.Typ} |
|
||||||
onChange={this.handleChange("Typ")} |
|
||||||
input={ |
|
||||||
<OutlinedInput |
|
||||||
labelWidth={95} |
|
||||||
name="laufzeit" |
|
||||||
id="outlined-laufzeit-simple" |
|
||||||
/> |
|
||||||
} |
|
||||||
> |
|
||||||
<MenuItem value={"einzel"}>Einzelunterricht</MenuItem> |
|
||||||
<MenuItem value={"band"}>Gruppenunterricht / Band</MenuItem> |
|
||||||
</Select> |
|
||||||
</FormControl> |
|
||||||
</Grid> |
|
||||||
<Grid item sm={12} xs={12}> |
|
||||||
<div className={classes.checkbox}> |
|
||||||
<FormControlLabel |
|
||||||
control={ |
|
||||||
<Checkbox |
|
||||||
checked={this.state.form.Ermaessigt} |
|
||||||
onChange={() => this.handleChange("Ermaessigt")} |
|
||||||
value="Ermaessigt" |
|
||||||
color="primary" |
|
||||||
/> |
|
||||||
} |
|
||||||
label="Schüler/Student/Azubi" |
|
||||||
/> |
|
||||||
</div> |
|
||||||
</Grid> |
|
||||||
</Grid> |
|
||||||
<Grid container spacing={1}> |
|
||||||
<Grid item xs={12}> |
|
||||||
<Typography align="center" variant="h4"> |
|
||||||
Bankverbindung |
|
||||||
</Typography> |
|
||||||
</Grid> |
|
||||||
<Grid item sm={6} xs={12}> |
|
||||||
<TextField |
|
||||||
fullWidth={true} |
|
||||||
id="outlined-name" |
|
||||||
label="BLZ" |
|
||||||
className={classes.textField} |
|
||||||
value={this.state.form.BLZ} |
|
||||||
onChange={this.handleChange("BLZ")} |
|
||||||
margin="normal" |
|
||||||
variant="outlined" |
|
||||||
/> |
|
||||||
</Grid> |
|
||||||
<Grid item sm={6} xs={12}> |
|
||||||
<TextField |
|
||||||
fullWidth={true} |
|
||||||
id="outlined-name" |
|
||||||
label="Bankname" |
|
||||||
className={classes.textField} |
|
||||||
value={this.state.form.Bankname} |
|
||||||
onChange={this.handleChange("Bankname")} |
|
||||||
margin="normal" |
|
||||||
variant="outlined" |
|
||||||
/> |
|
||||||
</Grid> |
|
||||||
<Grid item xs={12}> |
|
||||||
<TextField |
|
||||||
fullWidth={true} |
|
||||||
id="outlined-name" |
|
||||||
label="KontoNr" |
|
||||||
className={classes.textField} |
|
||||||
value={this.state.form.KontoNr} |
|
||||||
onChange={this.handleChange("KontoNr")} |
|
||||||
margin="normal" |
|
||||||
variant="outlined" |
|
||||||
/> |
|
||||||
</Grid> |
|
||||||
</Grid> |
|
||||||
|
|
||||||
<Fab color="primary" aria-label="Send" className={classes.fab}> |
|
||||||
<SendIcon /> |
|
||||||
</Fab> |
|
||||||
</Grid> |
|
||||||
</div> |
|
||||||
</Container> |
|
||||||
); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
export default withStyles(useStyles)(Aufnahmeantrag); |
|
||||||
@ -1,36 +0,0 @@ |
|||||||
import React, { Component } from "react"; |
|
||||||
import TextField from "@material-ui/core/TextField"; |
|
||||||
|
|
||||||
class Login extends Component { |
|
||||||
state = {}; |
|
||||||
render() { |
|
||||||
return ( |
|
||||||
<form> |
|
||||||
<TextField |
|
||||||
variant="outlined" |
|
||||||
margin="normal" |
|
||||||
required |
|
||||||
fullWidth |
|
||||||
id="email" |
|
||||||
label="Email Address" |
|
||||||
name="email" |
|
||||||
autoComplete="email" |
|
||||||
autoFocus |
|
||||||
/> |
|
||||||
<TextField |
|
||||||
type="password" |
|
||||||
variant="outlined" |
|
||||||
margin="normal" |
|
||||||
required |
|
||||||
fullWidth |
|
||||||
id="password" |
|
||||||
label="Password" |
|
||||||
name="password" |
|
||||||
autoComplete="password" |
|
||||||
/> |
|
||||||
</form> |
|
||||||
); |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
export default Login; |
|
||||||
@ -1,6 +0,0 @@ |
|||||||
import React from "react"; |
|
||||||
import ReactDOM from "react-dom"; |
|
||||||
import "./style/index.css"; |
|
||||||
import App from "./components/App"; |
|
||||||
|
|
||||||
ReactDOM.render(<App />, document.getElementById("root")); |
|
||||||
@ -1,19 +0,0 @@ |
|||||||
body { |
|
||||||
margin: 0; |
|
||||||
padding: 0; |
|
||||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", |
|
||||||
"Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", |
|
||||||
sans-serif; |
|
||||||
background-color: rgba(234, 222, 218, 1) !important; |
|
||||||
-webkit-font-smoothing: antialiased; |
|
||||||
-moz-osx-font-smoothing: grayscale; |
|
||||||
} |
|
||||||
|
|
||||||
code { |
|
||||||
font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", |
|
||||||
monospace; |
|
||||||
} |
|
||||||
|
|
||||||
html { |
|
||||||
background-color: rgba(234, 222, 218, 1); |
|
||||||
} |
|
||||||
|
Before Width: | Height: | Size: 50 KiB |
@ -1,57 +0,0 @@ |
|||||||
<diagram program="umletino" version="14.3.0"><zoom_level>10</zoom_level><help_text></help_text><element><id>UMLClass</id><coordinates><x>125</x><y>60</y><w>240</w><h>180</h></coordinates><panel_attributes>Person |
|
||||||
<<abstract>> |
|
||||||
-- |
|
||||||
_Id_ |
|
||||||
Name, Vorname |
|
||||||
Geburtsdatum, Geburtsort |
|
||||||
PLZ, Ort, Strasse |
|
||||||
Telefon, EMail |
|
||||||
Bankname |
|
||||||
BLZ |
|
||||||
KontoNr</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>125</x><y>290</y><w>100</w><h>50</h></coordinates><panel_attributes>Schueler |
|
||||||
- |
|
||||||
IstErmaessigt</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>265</x><y>290</y><w>100</w><h>50</h></coordinates><panel_attributes>Dozent |
|
||||||
-- |
|
||||||
Stundensatz</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>304</x><y>230</y><w>30</w><h>80</h></coordinates><panel_attributes>lt=<<-</panel_attributes><additional_attributes>10;10;10;60</additional_attributes></element><element><id>Relation</id><coordinates><x>164</x><y>230</y><w>30</w><h>80</h></coordinates><panel_attributes>lt=<<-</panel_attributes><additional_attributes>10;10;10;60</additional_attributes></element><element><id>UMLClass</id><coordinates><x>184</x><y>451</y><w>120</w><h>100</h></coordinates><panel_attributes>Kurs |
|
||||||
-- |
|
||||||
_Id_ |
|
||||||
Name |
|
||||||
Laufzeit |
|
||||||
Kuendigungsfrist |
|
||||||
Bestaetigt</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>634</x><y>361</y><w>100</w><h>80</h></coordinates><panel_attributes>Raum |
|
||||||
-- |
|
||||||
_Nr_ |
|
||||||
Name |
|
||||||
Belegt</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLClass</id><coordinates><x>464</x><y>451</y><w>100</w><h>90</h></coordinates><panel_attributes>Unterricht |
|
||||||
-- |
|
||||||
_Id_ |
|
||||||
Name |
|
||||||
Anfangszeit |
|
||||||
Notiz |
|
||||||
</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>254</x><y>331</y><w>80</w><h>140</h></coordinates><panel_attributes>m1=1 |
|
||||||
m2=0..n</panel_attributes><additional_attributes>60;10;10;120</additional_attributes></element><element><id>Relation</id><coordinates><x>164</x><y>331</y><w>90</w><h>140</h></coordinates><panel_attributes>m1=0..n |
|
||||||
m2=1..n</panel_attributes><additional_attributes>10;10;60;120</additional_attributes></element><element><id>Relation</id><coordinates><x>294</x><y>491</y><w>190</w><h>40</h></coordinates><panel_attributes>m1=1..n |
|
||||||
m2=1</panel_attributes><additional_attributes>170;10;10;10</additional_attributes></element><element><id>Relation</id><coordinates><x>554</x><y>431</y><w>160</w><h>100</h></coordinates><panel_attributes>m1=1 |
|
||||||
m2=1..n</panel_attributes><additional_attributes>130;10;130;70;10;70</additional_attributes></element><element><id>UMLClass</id><coordinates><x>154</x><y>630</y><w>180</w><h>90</h></coordinates><panel_attributes>UnterrichtTyp |
|
||||||
<<enum>> |
|
||||||
-- |
|
||||||
Einzel |
|
||||||
Gruppe |
|
||||||
Musikalische Früherziehung</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>234</x><y>541</y><w>110</w><h>110</h></coordinates><panel_attributes>*UnterrichtTyp* |
|
||||||
m1=1</panel_attributes><additional_attributes>10;90;10;10</additional_attributes></element><element><id>UMLClass</id><coordinates><x>464</x><y>271</y><w>100</w><h>120</h></coordinates><panel_attributes>Instrument |
|
||||||
<<enum>> |
|
||||||
-- |
|
||||||
Klavier |
|
||||||
Schlagzeug |
|
||||||
Geige |
|
||||||
Gitarre |
|
||||||
Band</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>554</x><y>321</y><w>160</w><h>60</h></coordinates><panel_attributes>m1=1..n |
|
||||||
m2=1</panel_attributes><additional_attributes>10;10;130;10;130;40</additional_attributes></element><element><id>Relation</id><coordinates><x>354</x><y>311</y><w>130</w><h>40</h></coordinates><panel_attributes>m1=1..n |
|
||||||
m2=0..n</panel_attributes><additional_attributes>110;10;10;10</additional_attributes></element><element><id>UMLClass</id><coordinates><x>840</x><y>60</y><w>110</w><h>110</h></coordinates><panel_attributes>Antrag |
|
||||||
- |
|
||||||
Laufzeit |
|
||||||
KursId</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>54</x><y>21</y><w>870</w><h>330</h></coordinates><panel_attributes>m1=1 |
|
||||||
m2=1</panel_attributes><additional_attributes>70;300;10;300;10;10;840;10;840;40</additional_attributes></element><element><id>Relation</id><coordinates><x>324</x><y>161</y><w>590</w><h>550</h></coordinates><panel_attributes>*UnterrichtTyp* |
|
||||||
m1=1</panel_attributes><additional_attributes>10;520;570;520;570;10</additional_attributes></element><element><id>Relation</id><coordinates><x>504</x><y>131</y><w>360</w><h>160</h></coordinates><panel_attributes>*Instrumente* |
|
||||||
m1=1..n</panel_attributes><additional_attributes>10;140;10;20;340;19</additional_attributes></element><element><id>Relation</id><coordinates><x>294</x><y>351</y><w>190</w><h>150</h></coordinates><panel_attributes>*Instrumente* |
|
||||||
m1=1..n</panel_attributes><additional_attributes>170;10;10;130</additional_attributes></element></diagram> |
|
||||||
|
Before Width: | Height: | Size: 111 KiB |
@ -1,24 +0,0 @@ |
|||||||
<diagram program="umletino" version="14.3.0"><zoom_level>10</zoom_level><element><id>UMLActor</id><coordinates><x>10</x><y>145</y><w>80</w><h>110</h></coordinates><panel_attributes>Verwaltung</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLActor</id><coordinates><x>10</x><y>535</y><w>80</w><h>110</h></coordinates><panel_attributes>Teilnehmer</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLGeneric</id><coordinates><x>130</x><y>5</y><w>990</w><h>660</h></coordinates><panel_attributes>Online-Auftritt der Musikschule |
|
||||||
-- |
|
||||||
halign=center</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLUseCase</id><coordinates><x>160</x><y>45</y><w>120</w><h>40</h></coordinates><panel_attributes>Dozenten anlegen</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLUseCase</id><coordinates><x>180</x><y>555</y><w>170</w><h>40</h></coordinates><panel_attributes>Aufnahmeantrag stellen</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLActor</id><coordinates><x>20</x><y>405</y><w>60</w><h>110</h></coordinates><panel_attributes>Dozent</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLUseCase</id><coordinates><x>170</x><y>385</y><w>170</w><h>50</h></coordinates><panel_attributes>Stundenplan pro Woche</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLUseCase</id><coordinates><x>940</x><y>45</y><w>120</w><h>40</h></coordinates><panel_attributes>Raumplanung</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLUseCase</id><coordinates><x>700</x><y>125</y><w>120</w><h>50</h></coordinates><panel_attributes>Kurse anlegen</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLUseCase</id><coordinates><x>370</x><y>445</y><w>200</w><h>50</h></coordinates><panel_attributes>Eintragung der Unterrichtsinhalte</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLActor</id><coordinates><x>0</x><y>695</y><w>100</w><h>110</h></coordinates><panel_attributes>Administrator</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLGeneric</id><coordinates><x>130</x><y>665</y><w>990</w><h>150</h></coordinates><panel_attributes>Backend-Administration |
|
||||||
-- |
|
||||||
halign=center</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLUseCase</id><coordinates><x>950</x><y>185</y><w>120</w><h>40</h></coordinates><panel_attributes>Unterrichtsplanung</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLUseCase</id><coordinates><x>260</x><y>705</y><w>260</w><h>40</h></coordinates><panel_attributes>Zugriff und Verwaltung der Datenbank</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLUseCase</id><coordinates><x>270</x><y>765</y><w>230</w><h>40</h></coordinates><panel_attributes>Zugriff und Verwaltung des Hostings</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>810</x><y>55</y><w>150</w><h>100</h></coordinates><panel_attributes>lt=.> |
|
||||||
|
|
||||||
|
|
||||||
<<includes>></panel_attributes><additional_attributes>10;80;130;10</additional_attributes></element><element><id>Relation</id><coordinates><x>810</x><y>145</y><w>160</w><h>80</h></coordinates><panel_attributes>lt=.> |
|
||||||
|
|
||||||
|
|
||||||
<<includes>></panel_attributes><additional_attributes>10;17;140;60</additional_attributes></element><element><id>UMLUseCase</id><coordinates><x>200</x><y>225</y><w>290</w><h>140</h></coordinates><panel_attributes>Dozentenübersicht |
|
||||||
-- |
|
||||||
Welche Kurse aktuell |
|
||||||
Welche Kurstypen möglich |
|
||||||
Welche aktuellen Schüler (mit Anzahl) |
|
||||||
Stundenplan pro Woche |
|
||||||
Bezahlung (inkl. Stundensätze)</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLUseCase</id><coordinates><x>620</x><y>45</y><w>120</w><h>70</h></coordinates><panel_attributes>Schülerübersicht |
|
||||||
-- |
|
||||||
Kurse zu Schüler |
|
||||||
</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLUseCase</id><coordinates><x>550</x><y>195</y><w>150</w><h>70</h></coordinates><panel_attributes>Raumübersicht |
|
||||||
-- |
|
||||||
Welche Instrumente |
|
||||||
Belegunsplan</panel_attributes><additional_attributes></additional_attributes></element><element><id>UMLUseCase</id><coordinates><x>350</x><y>45</y><w>210</w><h>40</h></coordinates><panel_attributes>Übersicht monatliche Einnahmen</panel_attributes><additional_attributes></additional_attributes></element><element><id>Relation</id><coordinates><x>70</x><y>57</y><w>110</w><h>140</h></coordinates><panel_attributes></panel_attributes><additional_attributes>10;120;90;10</additional_attributes></element><element><id>Relation</id><coordinates><x>70</x><y>57</y><w>300</w><h>140</h></coordinates><panel_attributes></panel_attributes><additional_attributes>10;120;280;10</additional_attributes></element><element><id>Relation</id><coordinates><x>70</x><y>67</y><w>570</w><h>130</h></coordinates><panel_attributes></panel_attributes><additional_attributes>10;110;550;10</additional_attributes></element><element><id>Relation</id><coordinates><x>70</x><y>167</y><w>150</w><h>140</h></coordinates><panel_attributes></panel_attributes><additional_attributes>10;10;130;120</additional_attributes></element><element><id>Relation</id><coordinates><x>70</x><y>167</y><w>500</w><h>80</h></coordinates><panel_attributes></panel_attributes><additional_attributes>10;10;480;60</additional_attributes></element><element><id>Relation</id><coordinates><x>70</x><y>137</y><w>650</w><h>60</h></coordinates><panel_attributes></panel_attributes><additional_attributes>10;40;630;10</additional_attributes></element><element><id>Relation</id><coordinates><x>80</x><y>397</y><w>110</w><h>70</h></coordinates><panel_attributes></panel_attributes><additional_attributes>10;50;90;10</additional_attributes></element><element><id>Relation</id><coordinates><x>80</x><y>437</y><w>310</w><h>50</h></coordinates><panel_attributes></panel_attributes><additional_attributes>10;10;290;30</additional_attributes></element><element><id>Relation</id><coordinates><x>80</x><y>557</y><w>120</w><h>40</h></coordinates><panel_attributes></panel_attributes><additional_attributes>10;20;100;20</additional_attributes></element><element><id>Relation</id><coordinates><x>80</x><y>707</y><w>200</w><h>50</h></coordinates><panel_attributes></panel_attributes><additional_attributes>10;30;180;20</additional_attributes></element><element><id>Relation</id><coordinates><x>80</x><y>727</y><w>210</w><h>80</h></coordinates><panel_attributes></panel_attributes><additional_attributes>10;10;190;60</additional_attributes></element><element><id>Relation</id><coordinates><x>340</x><y>170</y><w>440</w><h>430</h></coordinates><panel_attributes>lt=.> |
|
||||||
<<includes>></panel_attributes><additional_attributes>10;410;420;410;420;10</additional_attributes></element></diagram> |
|
||||||
@ -1,193 +0,0 @@ |
|||||||
# Endpoints |
|
||||||
|
|
||||||
Im folgenden werden diverse Http-Schnittstellen zur Kommunikation zwischen Frontend und Backend beschrieben. |
|
||||||
|
|
||||||
Zusäzlich ist angegeben, für welche Benutzerrollen die jeweiligen Funktionen zu Verfügung steht. |
|
||||||
|
|
||||||
--- |
|
||||||
|
|
||||||
### Login |
|
||||||
- POST login |
|
||||||
- Parameter |
|
||||||
- Username string |
|
||||||
- Password string |
|
||||||
- POST logout |
|
||||||
|
|
||||||
|
|
||||||
### Übersichtsseite (Dozent und Verwaltung) |
|
||||||
- GET screens |
|
||||||
- Liefert alle erlaubten Ansichten für einen User zurück |
|
||||||
- Liefert Array |
|
||||||
- Screen string |
|
||||||
|
|
||||||
### Wochenübersicht (Dozent) |
|
||||||
- GET weekly_overview |
|
||||||
- Liefert alle Unterrichtseinheiten für die nächsten 7 Tage |
|
||||||
- Liefert Array |
|
||||||
|
|
||||||
### Kursübericht [besser Kursdetails] (Dozent und Verwaltung) |
|
||||||
- GET course_detail |
|
||||||
- Liefert alle Informationen zu einem Kurs |
|
||||||
- Paramter |
|
||||||
- KursID string |
|
||||||
- Liefert object |
|
||||||
- KursID string |
|
||||||
- DozentID string |
|
||||||
- DozentName string |
|
||||||
- Unterrichtseinheiten Array |
|
||||||
- StartZeit DateTime |
|
||||||
- Students Array |
|
||||||
- StudentID string |
|
||||||
- StudentName string |
|
||||||
- GET course_contents |
|
||||||
- Liefert alle eingetragenen Inhalten zum Kurs |
|
||||||
- Parameter |
|
||||||
- KursID string |
|
||||||
- PUT new_course_content |
|
||||||
- Inhalt der letzten UE wird gesetzt |
|
||||||
- Parameter |
|
||||||
- KursID string |
|
||||||
- Content string |
|
||||||
|
|
||||||
### Welcher Lehrer Welcher Kurs (Verwaltung) |
|
||||||
- GET course_teacher_match |
|
||||||
- Liefert Array |
|
||||||
- KursID string |
|
||||||
- KursName string |
|
||||||
- DozentID string |
|
||||||
- DozentName string |
|
||||||
|
|
||||||
### Welche Schüler Welcher Kurs (Verwaltung) |
|
||||||
- GET course_student_match |
|
||||||
- Liefert Array |
|
||||||
- KursID string |
|
||||||
- KursName string |
|
||||||
- DozentID string |
|
||||||
- DozentName string |
|
||||||
|
|
||||||
### Lehrerübersicht (Verwaltung) |
|
||||||
- GET all_teachers |
|
||||||
- Liefert alle Dozenten |
|
||||||
- Liefert Array |
|
||||||
- DozentID string |
|
||||||
- DozentName string |
|
||||||
|
|
||||||
### Schüler von Lehrer (Dozent und Verwaltung) |
|
||||||
- GET students_of_teacher |
|
||||||
- Parameter DozentID |
|
||||||
- Liefert Array |
|
||||||
- StundentID string |
|
||||||
- StudentName string |
|
||||||
|
|
||||||
### Raumübersicht (Verwaltung) |
|
||||||
- GET rooms |
|
||||||
- Liefert alle verfügbaren Räume, inkl. der vorhandenen Instrumente |
|
||||||
- Liefert Array |
|
||||||
- RaumID string |
|
||||||
- RaumName string |
|
||||||
- Instrumente Array |
|
||||||
- InstrumentID string |
|
||||||
- InstrumentName string |
|
||||||
- PUT create_rooms |
|
||||||
- Parameter |
|
||||||
- RaumName string |
|
||||||
- Instrumente Array |
|
||||||
- InstrumentID string |
|
||||||
|
|
||||||
### Raumdetails (Verwaltung) |
|
||||||
- GET room_free |
|
||||||
- Liefert alle aktuell freien Räumen |
|
||||||
- Parameter |
|
||||||
- RaumID string |
|
||||||
- Liefert object |
|
||||||
- Belegt bool |
|
||||||
- GET room_instruments |
|
||||||
- Liefert alle Instrumente zu einem Raum |
|
||||||
- Parameter |
|
||||||
- RaumID string |
|
||||||
- Liefert Array |
|
||||||
- InstrumentID string |
|
||||||
- InstrumentName string |
|
||||||
- Vorhanden bool |
|
||||||
- GET lessons |
|
||||||
- Liefert alle Unterrichtszeiten in einem Raum |
|
||||||
- Parameter |
|
||||||
- RaumID string |
|
||||||
- Liefert Array |
|
||||||
- StartZeit DateTime |
|
||||||
|
|
||||||
### Kurs Erstellen [Person + Kurs] (Verwaltung) |
|
||||||
- POST get_capable_teachers |
|
||||||
- Liefert alle Dozenten, die einen bestimmten Kurs leiten können |
|
||||||
- Parameter |
|
||||||
- Typ string |
|
||||||
- Instrumente Array |
|
||||||
- InstrumentID string |
|
||||||
- Liefert Array |
|
||||||
- DozentID string |
|
||||||
- DozentName string |
|
||||||
- POST get_cross_referenced_rooms |
|
||||||
- Parameter |
|
||||||
- Typ string |
|
||||||
- Instrumente Array |
|
||||||
- InstrumentID string |
|
||||||
- DozentID string |
|
||||||
- Liefert Array |
|
||||||
- RaumID string |
|
||||||
- Zeiten Array |
|
||||||
- Zeit DateTime |
|
||||||
- POST create_person |
|
||||||
- Erstellt eine Person |
|
||||||
- Parameter |
|
||||||
- Name string |
|
||||||
- Vorname string |
|
||||||
- IstErmaessigt bool |
|
||||||
- Geburtsdatum DateTime |
|
||||||
- Geburtsort string |
|
||||||
- PLZ string |
|
||||||
- Ort string |
|
||||||
- StrasseHNR string |
|
||||||
- Bankname string |
|
||||||
- BLZ string |
|
||||||
- KontoNr string |
|
||||||
- Liefert object |
|
||||||
- StudentID string |
|
||||||
- POST create_course |
|
||||||
- Erstellt einen Kurs |
|
||||||
- Parameter |
|
||||||
- Typ string |
|
||||||
- Instrumente Array |
|
||||||
- InstrumentID string |
|
||||||
- DonzentID string |
|
||||||
- Unterrichtseinheiten Array |
|
||||||
- Zeit int |
|
||||||
- POST enroll_student |
|
||||||
- Ordnet einen Schueler einem Kurs zu |
|
||||||
- Parameter |
|
||||||
- KursID string |
|
||||||
- StudentID string |
|
||||||
|
|
||||||
### Aufnahmeantrag (Anonymous) |
|
||||||
- POST aufnahmeantrag |
|
||||||
- Parameter |
|
||||||
- Name string |
|
||||||
- Vorname string |
|
||||||
- IstErmaessigt bool |
|
||||||
- Geburtsdatum DateTime |
|
||||||
- Geburtsort string |
|
||||||
- PLZ string |
|
||||||
- Ort string |
|
||||||
- StrasseHNR string |
|
||||||
- Bankname string |
|
||||||
- BLZ string |
|
||||||
- KontoNr string |
|
||||||
- Typ string |
|
||||||
- Instrumente Array |
|
||||||
- InstrumentID string |
|
||||||
- Laufzeit |
|
||||||
- KursID string |
|
||||||
### Instrumente (Anonymous) |
|
||||||
- GET instruments |
|
||||||
- Liefert Instrumente Array |
|
||||||
- InstrumentID string |
|
||||||
- InstrumentName string |
|
||||||
@ -1,9 +0,0 @@ |
|||||||
### Fragenkatalog |
|
||||||
|
|
||||||
|Frage|Antwort| |
|
||||||
|-|-| |
|
||||||
|Öffnungszeiten|10:00 - 21:00| |
|
||||||
|Arbeitszeiten von Dozenten (vollzeit, teilzeit)|beliebig| |
|
||||||
|Wer legt den Donzenten an?|Büro (Verwaltung) oder Admin| |
|
||||||
|Wer legt die Kurse an?|Büro (Verwaltung) oder Admin| |
|
||||||
|Benutzerrollen|Admin, Büro, Dozent, Schüler| |
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,213 +0,0 @@ |
|||||||
# Pflichtenheft |
|
||||||
|
|
||||||
## Inhalt |
|
||||||
1. Zielbestimmung |
|
||||||
1. Musskriterien |
|
||||||
1. Abgrenzungskriterien |
|
||||||
1. Produkteinsatz |
|
||||||
1. Anwendungsbereiche |
|
||||||
1. Zielgruppen |
|
||||||
1. Betriebsbedingungen |
|
||||||
1. Produktumgebung |
|
||||||
1. Software |
|
||||||
1. Hardware |
|
||||||
1. Produktfunktionen |
|
||||||
1. Dozentenfunktionen |
|
||||||
1. Wochenübersicht |
|
||||||
2. Kursdetails |
|
||||||
2. Verwaltungsfunktionen |
|
||||||
1. Offene Anträge |
|
||||||
2. Kurse erstellen |
|
||||||
1. Kursübersicht |
|
||||||
2. Schülerübersicht |
|
||||||
3. Schüler eines Dozenten |
|
||||||
4. Raumübersicht m. Raumplan |
|
||||||
5. Raumdetails |
|
||||||
6. Offene Anträge |
|
||||||
7. Finanzübersichrt |
|
||||||
1. Sonstige Funktionen |
|
||||||
1. Login |
|
||||||
2. Mitglied zu Kurs hinzufügen |
|
||||||
1. Benutzeroberfläche |
|
||||||
1. Dialogstruktur |
|
||||||
2. Bildschirmlayout |
|
||||||
|
|
||||||
|
|
||||||
## Zielbestimmung |
|
||||||
|
|
||||||
> Das Ziel von Parsec Iron Puffin (*PIP*) ist es, eine Anwendung zu bieten welche die Organisation der Musikschule erlaubt. Hierzu werden für Dozenten und Verwaltung verschiedene administrative Funktionen bereitgestellt. Die aktuellen Betriebsprozesse sollen vereinfacht und beschleunigt werden. |
|
||||||
|
|
||||||
### Musskriterien |
|
||||||
* Es besteht ein Authentifizierung um den Zugriff auf alle Funktionen auf die jeweils berechtigten Personen zu beschränken. |
|
||||||
* Der Dozent |
|
||||||
* Kann seine Stunden in der kommenden Woche sehen können. |
|
||||||
* Kann den Inhalt seiner Kurs für jede Unterrichtseinheit (*UE*) pflegen. |
|
||||||
* Kann die Schüler eines Kurses sehen. |
|
||||||
* Die Verwaltung |
|
||||||
* Kann sehen, welcher Lehrer welchen Kurs leitet. |
|
||||||
* Kann sehen, welcher Schüler an welchem Kurs teilnimmt. |
|
||||||
* Kann sehen, welche Schüler von einem gegebenen Lehrer unterrichtet werden. |
|
||||||
* Kann Räume anlegen. |
|
||||||
* Kann bearbeiten, welche Instrumente in einem Raum zu verfügung stehen. |
|
||||||
* Kann die aktuelle Verfügbarkeit und die nächsten Termine eines Raumes sehen. |
|
||||||
* Kann offene Anträge sehen. |
|
||||||
* Kann aus eingehenden Anträgen neue Kurs erstellen und UE planen. |
|
||||||
* Kann in einer Übersicht die Einnahmen der Musikschule und den Betrag, welcher an jeden Dozent gezahlt wird sehen. |
|
||||||
* Der Administrative Nutzer |
|
||||||
* Konfiguriert die Betriebsparameter des Systems |
|
||||||
* Sichert die Datenbank |
|
||||||
* Ein Kurs hat |
|
||||||
* einen Dozenten |
|
||||||
* einen Typ (Einzel-, Bandunterricht, Früherziehung) |
|
||||||
* einen Raum |
|
||||||
* ein oder zwei Zeitpunkte |
|
||||||
* und eine Laufzeit |
|
||||||
* Der Schüler |
|
||||||
* kann einen Aufnahmeantrag über ein Webformular abschicken |
|
||||||
* erhält, nachdem die Verwaltung einen Kurs aus dem Antrag erstellt hat, eine Bestätigung (Kursbestätigung) mit den Zeiten Seiner Unterrichtseinheiten |
|
||||||
* hat bis zum ersten Unterrichtstermin Zeit, um den Unterricht zu bestätigen |
|
||||||
* Sonstiges |
|
||||||
* Deutsch ist Verkehrssprache |
|
||||||
* Alle Funktionen sind über das Internet erreichbar |
|
||||||
* Die Anwendung ist für Mobilgeräte optimiert |
|
||||||
|
|
||||||
### Wunschkriterien |
|
||||||
* Der Administrative Nutzer |
|
||||||
* Möchte bei der Erstellung eines Kurses durch einen Vorschlag zu passendem Raum, Dozenten und Zeitpunkt unterstützt werden. |
|
||||||
* Der Schüler |
|
||||||
* Möchte sich einloggen können um die eigenen Unterrichtszeiten und Inhalte einzusehen |
|
||||||
* Sonstiges |
|
||||||
* Daten sollen soweit sinnvoll möglich auf dem Endgerät zwischengespeichert werden, damit auch ohne Internetverbindung Grundlegende funktionalität geleistet werden kann. |
|
||||||
|
|
||||||
### Abgrenzungungskriterien |
|
||||||
* Das *PIP* |
|
||||||
* soll keine Abrechnung erstellen oder verschicken. |
|
||||||
|
|
||||||
## Produkteinsatz |
|
||||||
|
|
||||||
### Anwendungsbereiche |
|
||||||
Die Anwendung wird von den Dozenten und der Verwaltung zur Planung und Organisation der Musikschule genutzt. |
|
||||||
|
|
||||||
### Zielgruppe |
|
||||||
Die Zielgruppe besteht aus der Verwaltung und allen aktuellen und zukünftigen Dozenten der Musikschule. Eventeuell wird die Zielgruppe um die Schüler der Musikschule erweitert. |
|
||||||
|
|
||||||
### Betriebsbedingungen |
|
||||||
* Betriebsdauer: täglich, 24 Stunden |
|
||||||
* Die Anwendung und ihre Teile werden auf einem virtuellen privaten Server bei einem externen Anbieter bereitgestellt |
|
||||||
* Die Anwendung ist global über das Internet erreichbar |
|
||||||
* Der Betrieb wird vom Auftragnehmer überwacht |
|
||||||
|
|
||||||
## Produktumgebung |
|
||||||
### Software |
|
||||||
* Client |
|
||||||
* Chrome oder Chromium basierter Browser der Version 74 |
|
||||||
* Server |
|
||||||
* Docker unter Linux (Version 18.09.5) |
|
||||||
|
|
||||||
### Hardware |
|
||||||
* Client |
|
||||||
* Internetfähiges Endgerät |
|
||||||
* Server |
|
||||||
* Internetfähiger Server |
|
||||||
* Ausreichende Rechen- und Festplattenkapazität |
|
||||||
|
|
||||||
## Produktfunktionen |
|
||||||
|
|
||||||
### **Dozentenfunktionen** |
|
||||||
#### Wochenübersicht **/FD01/** |
|
||||||
* Der Nutzer sieht eine Übersicht mit von Ihm gegebenen Kursen in den kommenden 7 Tagen, gruppiert nach Wochentag |
|
||||||
* Mit einem Klick auf einen Kurs gelangt man zu den entsprechenden Kursdetails |
|
||||||
|
|
||||||
#### Kursdetails **/FD02/** |
|
||||||
* Der Nutzer sieht Details zu einem Kurs |
|
||||||
* Er sieht alle Schüler, welche an dem Kurs teilnehmen |
|
||||||
* Er sieht die Einträge zu den den Unterrichtsinhalten der vergangen Unterrichtseinheiten und kann den Inhalt des letzten Termins bearbeiten / erfassen. |
|
||||||
|
|
||||||
### **Verwaltungsfunktionen |
|
||||||
|
|
||||||
#### Offene Anträge **/FV01/** |
|
||||||
* Es werden alle neu eingegangenen und nicht bestägtigten Anträge angzeigt. |
|
||||||
* Mit einem Klick auf einen eingegangen Antrag wird die [Kurs erstellen](#kurs-erstellen) Seite aufgerufen. |
|
||||||
|
|
||||||
#### Kurs Erstellen **/FV02/** |
|
||||||
* Nach einem eingegegangen Antrag kann basierent auf diesem ein Kurs erstellt werden. |
|
||||||
* Typ (Einzel, Gruppe, ), Instrument(e), Laufzeit und Personenbezogne Daten werden in der Kurserstllungs Mask vorausgefüllt |
|
||||||
* Es werden Dozenten angezeigt, welche zu den Instrumentenanforderungen passen |
|
||||||
* Es werden Räume angezeigt, welche zu den Instrumentenanforderungen passen |
|
||||||
* Nach Auswahl von Raum und Dozent wird/werden die Zeit(en) für die Unterrichtseinheiten gewählt werden; Die Möglichkeit der auswahl wird überprüft |
|
||||||
* Nach erfolgreicher Auswahl wird der Kurs in der Datenbank angelegt und der Schüler über den Kurs informiert. Dieser muss ihn vor der ersten Unterrichtseinheit bestätigen, ansonster verfällt der Kurs. |
|
||||||
|
|
||||||
#### Kursübersicht **/FV03/** |
|
||||||
* In der Kursübersicht werden in Tabellenform alle Kurse zusammen mit ihren Dozenten angezeigt. |
|
||||||
* Die Tabelle kann spaltenweise sortiert und nach Dozenten- und Kursname gefiltert werden. |
|
||||||
* Ein Klick auf einen Kurs führt zu [Kursdetails](#kursdetails-f02). |
|
||||||
* Ein Klick auf einen Dozenten führt zu [Schüler eines Dozenten](#sch%C3%BCler-eines-dozenten-fv05) |
|
||||||
|
|
||||||
#### Schülerübersicht **/FV04/** |
|
||||||
* Es werden in Tabellenform alle Schüler mit Ihren Kursen angezeigt, ein Kurs pro Zeile |
|
||||||
* Ein Schüler kann also mehrere Zeilen umfassen |
|
||||||
* Die Tabelle kann spaltenweise sortiert und nach Schüler- und Kursname gefiltert werden. |
|
||||||
|
|
||||||
#### Schüler eines Dozenten **/FV05/** |
|
||||||
* Es werden alle Schüler des ausgewählten Dozenten angezeigt. |
|
||||||
|
|
||||||
#### Raumübersicht **/FV06/** |
|
||||||
* Es werden alle Räume mit Grundlegenden Informationen angezeigt. |
|
||||||
* aktuelle Belegung |
|
||||||
* Instrumente |
|
||||||
* Es wird ein Button zum erstellen von neuen Räumen angzeigt |
|
||||||
|
|
||||||
#### Raumdetails **/FV07/** |
|
||||||
* Es werden alle Informationen zu einem Raum Angzeigt. |
|
||||||
* Name (bearbeitbar) |
|
||||||
* aktuelle Belegung |
|
||||||
* Instrumente (bearbeitbar) |
|
||||||
* Nächste 5 Unterrichtseinheiten in diesem Raum |
|
||||||
|
|
||||||
#### Finanzübersicht **/FV09/** |
|
||||||
* Es werden die gesamten monatlichen Einnahmen der Musikschule angzeigt. |
|
||||||
* Es werden die Zahlungen an die Dozenten, aufgeschlüsselt nacht Dozent angezeigt. |
|
||||||
|
|
||||||
### **Sonstige Funktionen** |
|
||||||
|
|
||||||
#### Login **/F01/** |
|
||||||
* Der Nutzer kann sich mit Benutzername und Passwort anmelden. |
|
||||||
* Benutzername und Passwort können von dem Administrativen Nutzer mithilfe von Direktzugriff auf das System angelegt werden |
|
||||||
|
|
||||||
#### Mitglied zu Kurs hinzufügen **/F02/** |
|
||||||
* Wenn ein Schüler einen Gruppenkurs erstellt hat, erhält dieser mit seiner Kursbestätigung einen Einladungslink, welcher auf eine "Antrag-Lite" Seite führt. |
|
||||||
* Hier können sich weiter Mitglieder der Gruppe/Band in diesen Kurs eintragen. |
|
||||||
* Dafür müssen diese nur Ihre Personenbezogenen Daten angeben, Sie werden in der über den Link identifizierten Kurs eingeschrieben. |
|
||||||
* Dies muss vor dem ersten Unterrichtstermin geschehen. |
|
||||||
|
|
||||||
|
|
||||||
## Benutzeroberfläche |
|
||||||
|
|
||||||
> Was sind die grundlegenden Anforderungen an die Benutzeroberfläche (Bildschirmlayout, Dialogstruktur, ...)? |
|
||||||
|
|
||||||
### Dialogstruktur |
|
||||||
|
|
||||||
Im Folgenden wird die grobe Dialogstruktur einer fehlerfreien bzw. konfliktfreien Benutzung des Systems gezeigt wird. |
|
||||||
Fehlereingaben haben eine akkumulierte Fehlermeldung zur Folge. |
|
||||||
|
|
||||||
#### Startseite |
|
||||||
|
|
||||||
 |
|
||||||
|
|
||||||
#### Übersichtsseite Dozenten |
|
||||||
|
|
||||||
Die Übersichtsseite Dozenten ist die Startseite des Dozenten, die der Dozent nach der Anmeldung /F01/ erreicht. |
|
||||||
|
|
||||||
 |
|
||||||
|
|
||||||
#### Übersichtsseite Verwaltung |
|
||||||
|
|
||||||
Die Übersichtsseite Verwaltung ist die Startseite der Verwaltung, die die Verwaltung nach der Anmeldung /F01/ erreicht. |
|
||||||
|
|
||||||
 |
|
||||||
|
|
||||||
### Bildschirmlayout |
|
||||||
|
|
||||||
Das Frontend wird mithilfe der JavaScript Bibliothek React erstellt, das Design wird mithilfe der MIT-lizensierten Designbibliothek Material-UI realisiert. Die Anwendung ist für Mobilegeräte optimiert und wird nach den Prinzipien des Responsiven Desings entwickelt. |
|
||||||
|
|
||||||
> Ausnahme sind die Administrationsfunktionen |
|
||||||
Binary file not shown.
@ -1,11 +0,0 @@ |
|||||||
# Rollenverteilung |
|
||||||
|
|
||||||
* Teamleitung ( Levin, Alexej ) |
|
||||||
* Aufgbenverteilung |
|
||||||
* Kommuniktion Organisieren (intern und mit Kunden) |
|
||||||
* Probleme lösen (intern und extern) |
|
||||||
* Übernimmt Controlling Aufgaben |
|
||||||
* Prozessbeobachtung ( Tobi ) |
|
||||||
* Diverse Geschehen beobachten und chronologisch dokumentieren |
|
||||||
* Entwickler ( alle ) |
|
||||||
* Entwicklung |
|
||||||
@ -1,15 +0,0 @@ |
|||||||
## Analyse |
|
||||||
1. Ist-Analyse |
|
||||||
2. Soll-Konzept |
|
||||||
1. Pflichtenheft |
|
||||||
|
|
||||||
## DV Konzept (Datenverarbeitungskonzept) |
|
||||||
* UML, ERD, Testfallkatalog, Struktogramm |
|
||||||
|
|
||||||
## Implementierung |
|
||||||
* Kommentierter Code |
|
||||||
|
|
||||||
## Testen |
|
||||||
* Vom Testfallkatalog |
|
||||||
|
|
||||||
## Abnahme |
|
||||||
|
Before Width: | Height: | Size: 9.7 KiB |
|
Before Width: | Height: | Size: 7.2 KiB |
|
Before Width: | Height: | Size: 30 KiB |
@ -1,21 +0,0 @@ |
|||||||
# 2019-05-08 Protokoll |
|
||||||
|
|
||||||
_Teilnehmer: Levin Faber, Alexej Komnik, Tobias Schiffarth, Kai Senkowski_ |
|
||||||
|
|
||||||
_Ort: Schule_ |
|
||||||
|
|
||||||
## Agenda |
|
||||||
* Rollenverteilung |
|
||||||
* Kommunikationsplan besprechen |
|
||||||
* Was ist unser erstes Todo |
|
||||||
* Brainstroming |
|
||||||
* Fragenkatalog erstellen |
|
||||||
|
|
||||||
## Ergebnisse |
|
||||||
* Im Vorlauf wurde ein Projektportfolio auf GitLab eingerichtet |
|
||||||
* Ein Rollenplan wurde erstellt |
|
||||||
* Der KP wurde besprochen |
|
||||||
* Erstes ToDo ist: MindMap erstellen |
|
||||||
|
|
||||||
## Resultierende Aufgaben |
|
||||||
* Keine |
|
||||||
@ -1,44 +0,0 @@ |
|||||||
# 2019-05-15 Protokoll |
|
||||||
|
|
||||||
_Teilnehmer: Levin Faber, Alexej Komnik, Tobias Schiffarth, Kai Senkowski_ |
|
||||||
|
|
||||||
_Ort: Schule_ |
|
||||||
|
|
||||||
## Agenda |
|
||||||
* Papierprototyp |
|
||||||
* Pflichtenheft |
|
||||||
* ER-Diagram |
|
||||||
* Endpoints für Kommunikation zwischen FE und BE |
|
||||||
* Fragenkatalog erstellen |
|
||||||
* Verwendete Techniken |
|
||||||
* Programmiersprachen |
|
||||||
* Frameworks |
|
||||||
* Docker |
|
||||||
* Datenbank |
|
||||||
|
|
||||||
## Ergebnisse |
|
||||||
* Verwendete Techniken |
|
||||||
* Frontend |
|
||||||
* UI Library "React" (Version 16.8.6) |
|
||||||
* Designvorlage "Material UI" (Version 3) |
|
||||||
* Backend |
|
||||||
* C# mit ASP.NET Core WebAPI (Version 2.1) |
|
||||||
* EntityFrameworkCore (Version 6) |
|
||||||
* SQLite Datenbank für EntityFrameworkCore (Version 2.1) |
|
||||||
* Infrastruktur |
|
||||||
* Docker (Version 18.09.6) |
|
||||||
* Codeverwaltung Gitlab (Gitlab Cloud) |
|
||||||
### Fragenkatalog |
|
||||||
|Frage|Antwort| |
|
||||||
|-|-| |
|
||||||
|Öffnungszeiten|| |
|
||||||
|Arbeitszeiten|| |
|
||||||
|Donzenten anlegen|| |
|
||||||
|Benutzerrollen|Admin, Büro, Schüler| |
|
||||||
|
|
||||||
## Resultierende Aufgaben |
|
||||||
|Aufgabe|Verantwortlicher|Erledigt| |
|
||||||
|-|-|-| |
|
||||||
|Papierprototyp erstellen und im nächsten Metting weiter besprechen|Kai, Levin|X| |
|
||||||
|Erstellung ER-Diagram und im nächsten Meeting weiter besprechen|Alexej, Tobias|X| |
|
||||||
|Erstellung Pflichtenheft und Definition der Endpoints nach Besprechung von Papierprototyp und ER-Diagram|Alle|| |
|
||||||
@ -1,19 +0,0 @@ |
|||||||
# 2019-05-22 Protokoll |
|
||||||
|
|
||||||
_Teilnehmer: Levin Faber, Alexej Komnik, Tobias Schiffarth, Kai Senkowski_ |
|
||||||
|
|
||||||
_Ort: Schule_ |
|
||||||
|
|
||||||
## Agenda |
|
||||||
* Papierprototyp |
|
||||||
* ER-Diagramm |
|
||||||
* Pflichtenheft |
|
||||||
* Laufzettel |
|
||||||
|
|
||||||
## Ergebnisse |
|
||||||
* Papierprototyp und ER-Diagramm besprochen und angepasst |
|
||||||
* Laufzettel: Abnahme von Kommunikationsplan und Papierprototyp |
|
||||||
|
|
||||||
## Resultierende Aufgaben |
|
||||||
|Aufgabe|Verantwortlicher|Erledigt| |
|
||||||
|-|-|-| |
|
||||||
@ -1,21 +0,0 @@ |
|||||||
# 2019-05-29 Protokoll |
|
||||||
|
|
||||||
_Teilnehmer: Levin Faber, Alexej Komnik, Tobias Schiffarth, Kai Senkowski_ |
|
||||||
|
|
||||||
_Ort: Schule_ |
|
||||||
|
|
||||||
## Agenda |
|
||||||
* Planung Pflichtenheft |
|
||||||
* Planung Projektsturkturplan inkl. Zeitplan |
|
||||||
* Laufzettel |
|
||||||
* Abnahme von ERD |
|
||||||
|
|
||||||
## Ergebnisse |
|
||||||
* Laufzettel: Abnahme von ERD, MindMap und Fragenkatalog |
|
||||||
|
|
||||||
## Resultierende Aufgaben |
|
||||||
|Aufgabe|Verantwortlicher|Erledigt| |
|
||||||
|-|-|-| |
|
||||||
|Erstellung Pflichtenheft|Kai, Levin|| |
|
||||||
|Erstellung Projektstrukturplan inkl. Zeitplan|Alexej, Tobi| |
|
||||||
|Erstellung div. Diagramme|Alexej, Tobi| |
|
||||||
@ -1,24 +0,0 @@ |
|||||||
# 2019-06-05 Protokoll |
|
||||||
|
|
||||||
_Teilnehmer: Levin Faber, ~~Alexej Komnik~~, Tobias Schiffarth, Kai Senkowski_ |
|
||||||
|
|
||||||
_Ort: Schule_ |
|
||||||
|
|
||||||
## Agenda |
|
||||||
* Projektstrukturplan und Zeitplan |
|
||||||
* Erstellung Datenbankschema |
|
||||||
* Status Pflichtenheft |
|
||||||
* Nächste TODOs |
|
||||||
* Vorbereitung Präsentation |
|
||||||
* Pipelines erstellen |
|
||||||
* Authentifizierung der Benutzer |
|
||||||
* Laufzettel |
|
||||||
|
|
||||||
## Ergebnisse |
|
||||||
* Pflichtenheft erste Version fast vollständig |
|
||||||
|
|
||||||
## Resultierende Aufgaben |
|
||||||
|Aufgabe|Verantwortlicher|Erledigt| |
|
||||||
|-|-|-| |
|
||||||
|Erstellung Datenbankschema|Tobi|| |
|
||||||
|Vorbereitung Präsensation (Basislayout und Inhaltsgliederung)|Kai|| |
|
||||||
@ -1,26 +0,0 @@ |
|||||||
# 2019-06-12 Protokoll |
|
||||||
|
|
||||||
_Teilnehmer: Levin Faber, Alexej Komnik, Tobias Schiffarth, Kai Senkowski_ |
|
||||||
|
|
||||||
_Ort: Schule_ |
|
||||||
|
|
||||||
## Agenda |
|
||||||
* Projektstrukturplan und Zeitplan |
|
||||||
* Pflichtenheft |
|
||||||
* Abgabe Use-Case-Diagramm |
|
||||||
* Endpoints |
|
||||||
* Enthaltene Funktionen im Prototyp? |
|
||||||
|
|
||||||
## Ergebnisse |
|
||||||
* Pflichtenheft ist abgegeben |
|
||||||
* Pflichenheft initial vollständig |
|
||||||
* PSP vervollständigt |
|
||||||
* Prototyp (enthaltene Funktionen) |
|
||||||
* Login |
|
||||||
* Antragsgformular |
|
||||||
* Wochenübersicht für Dozenten (Dozenten) |
|
||||||
* Kurse erstellen/bestätigen (Verwaltung) |
|
||||||
|
|
||||||
## Resultierende Aufgaben |
|
||||||
|Aufgabe|Verantwortlicher|Erledigt| |
|
||||||
|Pflichtenheft|Levin|Ja| |
|
||||||
@ -1,15 +0,0 @@ |
|||||||
# 2019-xx-xx Protokoll |
|
||||||
|
|
||||||
_Teilnehmer: Levin Faber, Alexej Komnik, Tobias Schiffarth, Kai Senkowski_ |
|
||||||
|
|
||||||
_Ort: Schule_ |
|
||||||
|
|
||||||
## Agenda |
|
||||||
* Punkt 1 |
|
||||||
|
|
||||||
## Ergebnisse |
|
||||||
* Punkt 1 |
|
||||||
|
|
||||||
## Resultierende Aufgaben |
|
||||||
|Aufgabe|Verantwortlicher|Erledigt| |
|
||||||
|-|-|-| |
|
||||||
@ -1,361 +0,0 @@ |
|||||||
{ |
|
||||||
"requires": true, |
|
||||||
"lockfileVersion": 1, |
|
||||||
"dependencies": { |
|
||||||
"@babel/runtime": { |
|
||||||
"version": "7.4.4", |
|
||||||
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.4.4.tgz", |
|
||||||
"integrity": "sha512-w0+uT71b6Yi7i5SE0co4NioIpSYS6lLiXvCzWzGSKvpK5vdQtCbICHMj+gbAKAOtxiV6HsVh/MBdaF9EQ6faSg==", |
|
||||||
"requires": { |
|
||||||
"regenerator-runtime": "^0.13.2" |
|
||||||
} |
|
||||||
}, |
|
||||||
"@emotion/hash": { |
|
||||||
"version": "0.7.1", |
|
||||||
"resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.7.1.tgz", |
|
||||||
"integrity": "sha512-OYpa/Sg+2GDX+jibUfpZVn1YqSVRpYmTLF2eyAfrFTIJSbwyIrc+YscayoykvaOME/wV4BV0Sa0yqdMrgse6mA==" |
|
||||||
}, |
|
||||||
"@material-ui/core": { |
|
||||||
"version": "4.0.0-beta.2", |
|
||||||
"resolved": "https://registry.npmjs.org/@material-ui/core/-/core-4.0.0-beta.2.tgz", |
|
||||||
"integrity": "sha512-AcAmd55hRloY2YqDvcwmZK4OiLZ+98nKliRh/YKyQqISEV0Lt98qRxxepluAm4KKr509Bjgg+rEJ+K+FpDTGjw==", |
|
||||||
"requires": { |
|
||||||
"@babel/runtime": "^7.2.0", |
|
||||||
"@material-ui/styles": "^4.0.0-beta.2", |
|
||||||
"@material-ui/system": "^4.0.0-beta.2", |
|
||||||
"@material-ui/types": "^4.0.0-beta.2", |
|
||||||
"@material-ui/utils": "^4.0.0-beta.1", |
|
||||||
"@types/react-transition-group": "^2.0.16", |
|
||||||
"clsx": "^1.0.2", |
|
||||||
"convert-css-length": "^1.0.2", |
|
||||||
"csstype": "^2.5.2", |
|
||||||
"debounce": "^1.1.0", |
|
||||||
"deepmerge": "^3.0.0", |
|
||||||
"hoist-non-react-statics": "^3.2.1", |
|
||||||
"is-plain-object": "^2.0.4", |
|
||||||
"normalize-scroll-left": "^0.1.2", |
|
||||||
"popper.js": "^1.14.1", |
|
||||||
"prop-types": "^15.7.2", |
|
||||||
"react-event-listener": "^0.6.6", |
|
||||||
"react-transition-group": "^4.0.0", |
|
||||||
"warning": "^4.0.1" |
|
||||||
} |
|
||||||
}, |
|
||||||
"@material-ui/styles": { |
|
||||||
"version": "4.0.0-beta.2", |
|
||||||
"resolved": "https://registry.npmjs.org/@material-ui/styles/-/styles-4.0.0-beta.2.tgz", |
|
||||||
"integrity": "sha512-fX0pfTtw2f6+AlfzQlsue5AJ18mZbFbC9Og339tx9wwM8aPjk/9dNr9nPugAqFbdB41Lz3t4tn5sGx2Jm/grEg==", |
|
||||||
"requires": { |
|
||||||
"@babel/runtime": "^7.2.0", |
|
||||||
"@emotion/hash": "^0.7.1", |
|
||||||
"@material-ui/types": "^4.0.0-beta.2", |
|
||||||
"@material-ui/utils": "^4.0.0-beta.1", |
|
||||||
"clsx": "^1.0.2", |
|
||||||
"deepmerge": "^3.0.0", |
|
||||||
"hoist-non-react-statics": "^3.2.1", |
|
||||||
"jss": "^10.0.0-alpha.16", |
|
||||||
"jss-plugin-camel-case": "^10.0.0-alpha.16", |
|
||||||
"jss-plugin-default-unit": "^10.0.0-alpha.16", |
|
||||||
"jss-plugin-global": "^10.0.0-alpha.16", |
|
||||||
"jss-plugin-nested": "^10.0.0-alpha.16", |
|
||||||
"jss-plugin-props-sort": "^10.0.0-alpha.16", |
|
||||||
"jss-plugin-rule-value-function": "^10.0.0-alpha.16", |
|
||||||
"jss-plugin-vendor-prefixer": "^10.0.0-alpha.16", |
|
||||||
"prop-types": "^15.7.2", |
|
||||||
"warning": "^4.0.1" |
|
||||||
} |
|
||||||
}, |
|
||||||
"@material-ui/system": { |
|
||||||
"version": "4.0.0-beta.2", |
|
||||||
"resolved": "https://registry.npmjs.org/@material-ui/system/-/system-4.0.0-beta.2.tgz", |
|
||||||
"integrity": "sha512-0KkCMZuUDGtx4iKbWxw9G4ncn5ZNgG7aYnHLEebFEPyb9EX66XP2whIUHWhPSaPBXb4QarUWOSCGDFoCX6ecSw==", |
|
||||||
"requires": { |
|
||||||
"@babel/runtime": "^7.2.0", |
|
||||||
"deepmerge": "^3.0.0", |
|
||||||
"prop-types": "^15.7.2", |
|
||||||
"warning": "^4.0.1" |
|
||||||
} |
|
||||||
}, |
|
||||||
"@material-ui/types": { |
|
||||||
"version": "4.0.0-beta.2", |
|
||||||
"resolved": "https://registry.npmjs.org/@material-ui/types/-/types-4.0.0-beta.2.tgz", |
|
||||||
"integrity": "sha512-Fct55vzMMUyiJqCBkBLERSrB2rdD7C4vbWtJcnhHaGSpAayG3jxhbxEoxm96UHsuI1DZAN7DdxwA4Y+w+pi78Q==" |
|
||||||
}, |
|
||||||
"@material-ui/utils": { |
|
||||||
"version": "4.0.0-beta.1", |
|
||||||
"resolved": "https://registry.npmjs.org/@material-ui/utils/-/utils-4.0.0-beta.1.tgz", |
|
||||||
"integrity": "sha512-DXheNh0CQ5y9QBFmXom3+lwKjFMLS1aBog40870fH3i0P0isVweSqVGadVDoyX9ma6cV/DfcLFSsb1+CBgNA1g==", |
|
||||||
"requires": { |
|
||||||
"@babel/runtime": "^7.2.0", |
|
||||||
"prop-types": "^15.7.2", |
|
||||||
"react-is": "^16.8.0" |
|
||||||
} |
|
||||||
}, |
|
||||||
"@types/prop-types": { |
|
||||||
"version": "15.7.1", |
|
||||||
"resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.1.tgz", |
|
||||||
"integrity": "sha512-CFzn9idOEpHrgdw8JsoTkaDDyRWk1jrzIV8djzcgpq0y9tG4B4lFT+Nxh52DVpDXV+n4+NPNv7M1Dj5uMp6XFg==" |
|
||||||
}, |
|
||||||
"@types/react": { |
|
||||||
"version": "16.8.17", |
|
||||||
"resolved": "https://registry.npmjs.org/@types/react/-/react-16.8.17.tgz", |
|
||||||
"integrity": "sha512-pln3mgc6VfkNg92WXODul/ONo140huK9OMsx62GlBlZ2lvjNK86PQJhYMPLO1i66aF5O9OPyZefogvNltBIszA==", |
|
||||||
"requires": { |
|
||||||
"@types/prop-types": "*", |
|
||||||
"csstype": "^2.2.0" |
|
||||||
} |
|
||||||
}, |
|
||||||
"@types/react-transition-group": { |
|
||||||
"version": "2.9.1", |
|
||||||
"resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-2.9.1.tgz", |
|
||||||
"integrity": "sha512-1usq4DRUVBFnxc9KGJAlJO9EpQrLZGDDEC8wDOn2+2ODSyudYo8FiIzPDRaX/hfQjHqGeeoNaNdA2bj0l35hZQ==", |
|
||||||
"requires": { |
|
||||||
"@types/react": "*" |
|
||||||
} |
|
||||||
}, |
|
||||||
"clsx": { |
|
||||||
"version": "1.0.4", |
|
||||||
"resolved": "https://registry.npmjs.org/clsx/-/clsx-1.0.4.tgz", |
|
||||||
"integrity": "sha512-1mQ557MIZTrL/140j+JVdRM6e31/OA4vTYxXgqIIZlndyfjHpyawKZia1Im05Vp9BWmImkcNrNtFYQMyFcgJDg==" |
|
||||||
}, |
|
||||||
"console-polyfill": { |
|
||||||
"version": "0.1.2", |
|
||||||
"resolved": "https://registry.npmjs.org/console-polyfill/-/console-polyfill-0.1.2.tgz", |
|
||||||
"integrity": "sha1-ls/tUcr3gYn2mVcubxgnHcN8DjA=" |
|
||||||
}, |
|
||||||
"convert-css-length": { |
|
||||||
"version": "1.0.2", |
|
||||||
"resolved": "https://registry.npmjs.org/convert-css-length/-/convert-css-length-1.0.2.tgz", |
|
||||||
"integrity": "sha512-ecV7j3hXyXN1X2XfJBzhMR0o1Obv0v3nHmn0UiS3ACENrzbxE/EknkiunS/fCwQva0U62X1GChi8GaPh4oTlLg==", |
|
||||||
"requires": { |
|
||||||
"console-polyfill": "^0.1.2", |
|
||||||
"parse-unit": "^1.0.1" |
|
||||||
} |
|
||||||
}, |
|
||||||
"css-vendor": { |
|
||||||
"version": "2.0.2", |
|
||||||
"resolved": "https://registry.npmjs.org/css-vendor/-/css-vendor-2.0.2.tgz", |
|
||||||
"integrity": "sha512-Xn5ZAlI00d8HaQ8/oQ8d+iBzSF//NCc77LPzsucM32X/R/yTqmXy6otVsAM0XleXk6HjPuXoVZwXsayky/fsFQ==", |
|
||||||
"requires": { |
|
||||||
"@babel/runtime": "^7.3.1", |
|
||||||
"is-in-browser": "^1.0.2" |
|
||||||
} |
|
||||||
}, |
|
||||||
"csstype": { |
|
||||||
"version": "2.6.4", |
|
||||||
"resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.4.tgz", |
|
||||||
"integrity": "sha512-lAJUJP3M6HxFXbqtGRc0iZrdyeN+WzOWeY0q/VnFzI+kqVrYIzC7bWlKqCW7oCIdzoPkvfp82EVvrTlQ8zsWQg==" |
|
||||||
}, |
|
||||||
"debounce": { |
|
||||||
"version": "1.2.0", |
|
||||||
"resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.0.tgz", |
|
||||||
"integrity": "sha512-mYtLl1xfZLi1m4RtQYlZgJUNQjl4ZxVnHzIR8nLLgi4q1YT8o/WM+MK/f8yfcc9s5Ir5zRaPZyZU6xs1Syoocg==" |
|
||||||
}, |
|
||||||
"deepmerge": { |
|
||||||
"version": "3.2.0", |
|
||||||
"resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-3.2.0.tgz", |
|
||||||
"integrity": "sha512-6+LuZGU7QCNUnAJyX8cIrlzoEgggTM6B7mm+znKOX4t5ltluT9KLjN6g61ECMS0LTsLW7yDpNoxhix5FZcrIow==" |
|
||||||
}, |
|
||||||
"dom-helpers": { |
|
||||||
"version": "3.4.0", |
|
||||||
"resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.4.0.tgz", |
|
||||||
"integrity": "sha512-LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA==", |
|
||||||
"requires": { |
|
||||||
"@babel/runtime": "^7.1.2" |
|
||||||
} |
|
||||||
}, |
|
||||||
"hoist-non-react-statics": { |
|
||||||
"version": "3.3.0", |
|
||||||
"resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.0.tgz", |
|
||||||
"integrity": "sha512-0XsbTXxgiaCDYDIWFcwkmerZPSwywfUqYmwT4jzewKTQSWoE6FCMoUVOeBJWK3E/CrWbxRG3m5GzY4lnIwGRBA==", |
|
||||||
"requires": { |
|
||||||
"react-is": "^16.7.0" |
|
||||||
} |
|
||||||
}, |
|
||||||
"hyphenate-style-name": { |
|
||||||
"version": "1.0.3", |
|
||||||
"resolved": "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.3.tgz", |
|
||||||
"integrity": "sha512-EcuixamT82oplpoJ2XU4pDtKGWQ7b00CD9f1ug9IaQ3p1bkHMiKCZ9ut9QDI6qsa6cpUuB+A/I+zLtdNK4n2DQ==" |
|
||||||
}, |
|
||||||
"is-in-browser": { |
|
||||||
"version": "1.1.3", |
|
||||||
"resolved": "https://registry.npmjs.org/is-in-browser/-/is-in-browser-1.1.3.tgz", |
|
||||||
"integrity": "sha1-Vv9NtoOgeMYILrldrX3GLh0E+DU=" |
|
||||||
}, |
|
||||||
"is-plain-object": { |
|
||||||
"version": "2.0.4", |
|
||||||
"resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", |
|
||||||
"integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", |
|
||||||
"requires": { |
|
||||||
"isobject": "^3.0.1" |
|
||||||
} |
|
||||||
}, |
|
||||||
"isobject": { |
|
||||||
"version": "3.0.1", |
|
||||||
"resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", |
|
||||||
"integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" |
|
||||||
}, |
|
||||||
"js-tokens": { |
|
||||||
"version": "4.0.0", |
|
||||||
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", |
|
||||||
"integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" |
|
||||||
}, |
|
||||||
"jss": { |
|
||||||
"version": "10.0.0-alpha.16", |
|
||||||
"resolved": "https://registry.npmjs.org/jss/-/jss-10.0.0-alpha.16.tgz", |
|
||||||
"integrity": "sha512-HmKNNnr82TR5jkWjBcbrx/uim2ief588pWp7zsf4GQpL125zRkEaWYL1SXv5bR6bBvAoTtvJsTAOxDIlLxUNZg==", |
|
||||||
"requires": { |
|
||||||
"@babel/runtime": "^7.3.1", |
|
||||||
"is-in-browser": "^1.1.3", |
|
||||||
"tiny-warning": "^1.0.2" |
|
||||||
} |
|
||||||
}, |
|
||||||
"jss-plugin-camel-case": { |
|
||||||
"version": "10.0.0-alpha.16", |
|
||||||
"resolved": "https://registry.npmjs.org/jss-plugin-camel-case/-/jss-plugin-camel-case-10.0.0-alpha.16.tgz", |
|
||||||
"integrity": "sha512-nki+smHEsFyoZ0OlOYtaxVqcQA0ZHVJCE1slRnk+1TklbmxbBiO4TwITMTEaNIDv0U0Uyb0Z8wVgFgRwCCIFog==", |
|
||||||
"requires": { |
|
||||||
"@babel/runtime": "^7.3.1", |
|
||||||
"hyphenate-style-name": "^1.0.3", |
|
||||||
"jss": "10.0.0-alpha.16" |
|
||||||
} |
|
||||||
}, |
|
||||||
"jss-plugin-default-unit": { |
|
||||||
"version": "10.0.0-alpha.16", |
|
||||||
"resolved": "https://registry.npmjs.org/jss-plugin-default-unit/-/jss-plugin-default-unit-10.0.0-alpha.16.tgz", |
|
||||||
"integrity": "sha512-jjGW4F/r9yKvoyUk22M8nWhdMfvoWzJw/oFO2cDRXCk2onnWFiRALfqeUsEDyocwdZbyVF9WhZbSHn4GL03kSw==", |
|
||||||
"requires": { |
|
||||||
"@babel/runtime": "^7.3.1", |
|
||||||
"jss": "10.0.0-alpha.16" |
|
||||||
} |
|
||||||
}, |
|
||||||
"jss-plugin-global": { |
|
||||||
"version": "10.0.0-alpha.16", |
|
||||||
"resolved": "https://registry.npmjs.org/jss-plugin-global/-/jss-plugin-global-10.0.0-alpha.16.tgz", |
|
||||||
"integrity": "sha512-B1mm2ZF9OEsWPmzkG5ZUXqV88smDqpc4unILLXhWVuj0U5JeT0DNitH+QbXFrSueDJzkWVfvqyckvWDR/0qeDg==", |
|
||||||
"requires": { |
|
||||||
"@babel/runtime": "^7.3.1", |
|
||||||
"jss": "10.0.0-alpha.16" |
|
||||||
} |
|
||||||
}, |
|
||||||
"jss-plugin-nested": { |
|
||||||
"version": "10.0.0-alpha.16", |
|
||||||
"resolved": "https://registry.npmjs.org/jss-plugin-nested/-/jss-plugin-nested-10.0.0-alpha.16.tgz", |
|
||||||
"integrity": "sha512-3l/MB6COnIpq4GOXQFae6UydoaIPa81UxhuBTEQuiAojgTeUla9L7nB3h18Q4zAhQQpjxaEsyppAKuEzIP7kPQ==", |
|
||||||
"requires": { |
|
||||||
"@babel/runtime": "^7.3.1", |
|
||||||
"jss": "10.0.0-alpha.16", |
|
||||||
"tiny-warning": "^1.0.2" |
|
||||||
} |
|
||||||
}, |
|
||||||
"jss-plugin-props-sort": { |
|
||||||
"version": "10.0.0-alpha.16", |
|
||||||
"resolved": "https://registry.npmjs.org/jss-plugin-props-sort/-/jss-plugin-props-sort-10.0.0-alpha.16.tgz", |
|
||||||
"integrity": "sha512-+Yn9nugHAH58nf/d43H2uxMvlCFPDgLKRSmKO4Q4m1IGYjMbHsWt1Rk2HfC9IiCanqcqpc8hstwtzf+HG7PWFQ==", |
|
||||||
"requires": { |
|
||||||
"@babel/runtime": "^7.3.1", |
|
||||||
"jss": "10.0.0-alpha.16" |
|
||||||
} |
|
||||||
}, |
|
||||||
"jss-plugin-rule-value-function": { |
|
||||||
"version": "10.0.0-alpha.16", |
|
||||||
"resolved": "https://registry.npmjs.org/jss-plugin-rule-value-function/-/jss-plugin-rule-value-function-10.0.0-alpha.16.tgz", |
|
||||||
"integrity": "sha512-MQap9ne6ZGZH0NlpSQTMSm6QalBTF0hYpd2uaGQwam+GlT7IKeO+sTjd46I1WgO3kyOmwb0pIY6CnuLQGXKtSA==", |
|
||||||
"requires": { |
|
||||||
"@babel/runtime": "^7.3.1", |
|
||||||
"jss": "10.0.0-alpha.16" |
|
||||||
} |
|
||||||
}, |
|
||||||
"jss-plugin-vendor-prefixer": { |
|
||||||
"version": "10.0.0-alpha.16", |
|
||||||
"resolved": "https://registry.npmjs.org/jss-plugin-vendor-prefixer/-/jss-plugin-vendor-prefixer-10.0.0-alpha.16.tgz", |
|
||||||
"integrity": "sha512-70yJ6QE5dN8VlPUGKld5jK2SKyrteheEL/ismexpybIufunMs6iJgkhDndbOfv8ia13yZgUVqeakMdhRKYwK1A==", |
|
||||||
"requires": { |
|
||||||
"@babel/runtime": "^7.3.1", |
|
||||||
"css-vendor": "^2.0.1", |
|
||||||
"jss": "10.0.0-alpha.16" |
|
||||||
} |
|
||||||
}, |
|
||||||
"loose-envify": { |
|
||||||
"version": "1.4.0", |
|
||||||
"resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", |
|
||||||
"integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", |
|
||||||
"requires": { |
|
||||||
"js-tokens": "^3.0.0 || ^4.0.0" |
|
||||||
} |
|
||||||
}, |
|
||||||
"normalize-scroll-left": { |
|
||||||
"version": "0.1.2", |
|
||||||
"resolved": "https://registry.npmjs.org/normalize-scroll-left/-/normalize-scroll-left-0.1.2.tgz", |
|
||||||
"integrity": "sha512-F9YMRls0zCF6BFIE2YnXDRpHPpfd91nOIaNdDgrx5YMoPLo8Wqj+6jNXHQsYBavJeXP4ww8HCt0xQAKc5qk2Fg==" |
|
||||||
}, |
|
||||||
"object-assign": { |
|
||||||
"version": "4.1.1", |
|
||||||
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", |
|
||||||
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" |
|
||||||
}, |
|
||||||
"parse-unit": { |
|
||||||
"version": "1.0.1", |
|
||||||
"resolved": "https://registry.npmjs.org/parse-unit/-/parse-unit-1.0.1.tgz", |
|
||||||
"integrity": "sha1-fhu21b7zh0wo45JSaiVBFwKR7s8=" |
|
||||||
}, |
|
||||||
"popper.js": { |
|
||||||
"version": "1.15.0", |
|
||||||
"resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.15.0.tgz", |
|
||||||
"integrity": "sha512-w010cY1oCUmI+9KwwlWki+r5jxKfTFDVoadl7MSrIujHU5MJ5OR6HTDj6Xo8aoR/QsA56x8jKjA59qGH4ELtrA==" |
|
||||||
}, |
|
||||||
"prop-types": { |
|
||||||
"version": "15.7.2", |
|
||||||
"resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", |
|
||||||
"integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", |
|
||||||
"requires": { |
|
||||||
"loose-envify": "^1.4.0", |
|
||||||
"object-assign": "^4.1.1", |
|
||||||
"react-is": "^16.8.1" |
|
||||||
} |
|
||||||
}, |
|
||||||
"react-event-listener": { |
|
||||||
"version": "0.6.6", |
|
||||||
"resolved": "https://registry.npmjs.org/react-event-listener/-/react-event-listener-0.6.6.tgz", |
|
||||||
"integrity": "sha512-+hCNqfy7o9wvO6UgjqFmBzARJS7qrNoda0VqzvOuioEpoEXKutiKuv92dSz6kP7rYLmyHPyYNLesi5t/aH1gfw==", |
|
||||||
"requires": { |
|
||||||
"@babel/runtime": "^7.2.0", |
|
||||||
"prop-types": "^15.6.0", |
|
||||||
"warning": "^4.0.1" |
|
||||||
} |
|
||||||
}, |
|
||||||
"react-is": { |
|
||||||
"version": "16.8.6", |
|
||||||
"resolved": "https://registry.npmjs.org/react-is/-/react-is-16.8.6.tgz", |
|
||||||
"integrity": "sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA==" |
|
||||||
}, |
|
||||||
"react-transition-group": { |
|
||||||
"version": "4.0.1", |
|
||||||
"resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.0.1.tgz", |
|
||||||
"integrity": "sha512-SsLcBYhO4afXJC9esL8XMxi/y0ZvEc7To0TvtrBELqzpjXQHPZOTxvuPh2/4EhYc0uSMfp2SExIxsyJ0pBdNzg==", |
|
||||||
"requires": { |
|
||||||
"dom-helpers": "^3.4.0", |
|
||||||
"loose-envify": "^1.4.0", |
|
||||||
"prop-types": "^15.6.2" |
|
||||||
} |
|
||||||
}, |
|
||||||
"regenerator-runtime": { |
|
||||||
"version": "0.13.2", |
|
||||||
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.2.tgz", |
|
||||||
"integrity": "sha512-S/TQAZJO+D3m9xeN1WTI8dLKBBiRgXBlTJvbWjCThHWZj9EvHK70Ff50/tYj2J/fvBY6JtFVwRuazHN2E7M9BA==" |
|
||||||
}, |
|
||||||
"tiny-warning": { |
|
||||||
"version": "1.0.2", |
|
||||||
"resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.2.tgz", |
|
||||||
"integrity": "sha512-rru86D9CpQRLvsFG5XFdy0KdLAvjdQDyZCsRcuu60WtzFylDM3eAWSxEVz5kzL2Gp544XiUvPbVKtOA/txLi9Q==" |
|
||||||
}, |
|
||||||
"warning": { |
|
||||||
"version": "4.0.3", |
|
||||||
"resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", |
|
||||||
"integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==", |
|
||||||
"requires": { |
|
||||||
"loose-envify": "^1.0.0" |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
} |
|
||||||
Loading…
Reference in new issue