From 4199e77da4958c603de74d66ea00ac2bac02a191 Mon Sep 17 00:00:00 2001 From: "Suraj Shyamalan (shyamalans)" Date: Tue, 23 May 2023 15:58:57 +0100 Subject: [PATCH] Initial commit --- .gitattributes | 63 +++ .gitignore | 363 ++++++++++++++++ MobileAppProject.sln | 27 ++ MobileAppProject/App.xaml | 14 + MobileAppProject/App.xaml.cs | 13 + MobileAppProject/AppShell.xaml | 46 ++ MobileAppProject/AppShell.xaml.cs | 9 + MobileAppProject/AppState.cs | 12 + MobileAppProject/Constants.cs | 19 + MobileAppProject/Interfaces/IAppState.cs | 11 + .../Interfaces/IDatabaseService.cs | 13 + MobileAppProject/Interfaces/IFacadeService.cs | 28 ++ MobileAppProject/Interfaces/IGymService.cs | 31 ++ MobileAppProject/Interfaces/IHasher.cs | 14 + MobileAppProject/Interfaces/IPopUpService.cs | 15 + MobileAppProject/Interfaces/IUserService.cs | 13 + MobileAppProject/MauiProgram.cs | 66 +++ MobileAppProject/MobileAppProject.csproj | 104 +++++ MobileAppProject/Model/Exercise.cs | 12 + MobileAppProject/Model/Level.cs | 17 + MobileAppProject/Model/MuscleGroup.cs | 15 + MobileAppProject/Model/Routine.cs | 16 + MobileAppProject/Model/RoutineExercise.cs | 19 + MobileAppProject/Model/User.cs | 29 ++ .../Platforms/Android/AndroidManifest.xml | 6 + .../Platforms/Android/MainActivity.cs | 10 + .../Platforms/Android/MainApplication.cs | 15 + .../Android/Resources/values/colors.xml | 6 + .../Platforms/MacCatalyst/AppDelegate.cs | 9 + .../Platforms/MacCatalyst/Info.plist | 30 ++ .../Platforms/MacCatalyst/Program.cs | 15 + MobileAppProject/Platforms/Tizen/Main.cs | 16 + .../Platforms/Tizen/tizen-manifest.xml | 15 + MobileAppProject/Platforms/Windows/App.xaml | 8 + .../Platforms/Windows/App.xaml.cs | 24 ++ .../Platforms/Windows/Package.appxmanifest | 46 ++ .../Platforms/Windows/app.manifest | 15 + MobileAppProject/Platforms/iOS/AppDelegate.cs | 9 + MobileAppProject/Platforms/iOS/Info.plist | 32 ++ MobileAppProject/Platforms/iOS/Program.cs | 15 + .../Properties/launchSettings.json | 8 + .../Resources/AppIcon/appicon.svg | 4 + .../Resources/AppIcon/appiconfg.svg | 8 + .../Fonts/Fontspring-DEMO-grotesco-black.otf | Bin 0 -> 32364 bytes .../Resources/Fonts/OpenSans-Regular.ttf | Bin 0 -> 107184 bytes .../Resources/Fonts/OpenSans-Semibold.ttf | Bin 0 -> 111068 bytes .../Resources/Fonts/PlayMeGames-Demo.otf | Bin 0 -> 15912 bytes .../Resources/Fonts/Pokemon Classic.ttf | Bin 0 -> 91132 bytes .../Resources/Fonts/Retro Gaming.ttf | Bin 0 -> 31024 bytes .../Fonts/StayPixelRegular-EaOxl.ttf | Bin 0 -> 130064 bytes .../Resources/Images/dotnet_bot.svg | 93 ++++ .../Resources/Raw/AboutAssets.txt | 15 + MobileAppProject/Resources/Splash/splash.svg | 8 + MobileAppProject/Resources/Styles/Colors.xaml | 44 ++ MobileAppProject/Resources/Styles/Styles.xaml | 406 ++++++++++++++++++ MobileAppProject/Security/Hasher.cs | 35 ++ MobileAppProject/Services/DatabaseService.cs | 18 + MobileAppProject/Services/FacadeService.cs | 78 ++++ MobileAppProject/Services/GymService.cs | 316 ++++++++++++++ MobileAppProject/Services/PopUpService.cs | 21 + MobileAppProject/Services/UserService.cs | 19 + MobileAppProject/View/CreateRoutineView.xaml | 48 +++ .../View/CreateRoutineView.xaml.cs | 12 + .../View/ExerciseDetailsView.xaml | 14 + .../View/ExerciseDetailsView.xaml.cs | 11 + MobileAppProject/View/ExercisesView.xaml | 34 ++ MobileAppProject/View/ExercisesView.xaml.cs | 18 + MobileAppProject/View/LoginView.xaml | 73 ++++ MobileAppProject/View/LoginView.xaml.cs | 15 + MobileAppProject/View/MainView.xaml | 63 +++ MobileAppProject/View/MainView.xaml.cs | 15 + MobileAppProject/View/MuscleGroupView.xaml | 32 ++ MobileAppProject/View/MuscleGroupView.xaml.cs | 12 + .../View/RoutineExercisesView.xaml | 70 +++ .../View/RoutineExercisesView.xaml.cs | 13 + MobileAppProject/View/SignUpView.xaml | 70 +++ MobileAppProject/View/SignUpView.xaml.cs | 10 + .../View/UpdateExercisePopUp.xaml | 26 ++ .../View/UpdateExercisePopUp.xaml.cs | 30 ++ MobileAppProject/View/UpdateRoutinePopUp.xaml | 33 ++ .../View/UpdateRoutinePopUp.xaml.cs | 26 ++ MobileAppProject/ViewModel/BaseViewModel.cs | 25 ++ .../ViewModel/CreateRoutineViewModel.cs | 62 +++ .../ViewModel/ExerciseDetailsViewModel.cs | 51 +++ .../ViewModel/ExercisesViewModel.cs | 86 ++++ MobileAppProject/ViewModel/LoginViewModel.cs | 142 ++++++ MobileAppProject/ViewModel/MainViewModel.cs | 103 +++++ .../ViewModel/MuscleGroupViewModel.cs | 71 +++ .../ViewModel/RoutineExercisesViewModel.cs | 120 ++++++ MobileAppProject/ViewModel/SignUpViewModel.cs | 54 +++ README.md | 5 + 91 files changed, 3657 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 MobileAppProject.sln create mode 100644 MobileAppProject/App.xaml create mode 100644 MobileAppProject/App.xaml.cs create mode 100644 MobileAppProject/AppShell.xaml create mode 100644 MobileAppProject/AppShell.xaml.cs create mode 100644 MobileAppProject/AppState.cs create mode 100644 MobileAppProject/Constants.cs create mode 100644 MobileAppProject/Interfaces/IAppState.cs create mode 100644 MobileAppProject/Interfaces/IDatabaseService.cs create mode 100644 MobileAppProject/Interfaces/IFacadeService.cs create mode 100644 MobileAppProject/Interfaces/IGymService.cs create mode 100644 MobileAppProject/Interfaces/IHasher.cs create mode 100644 MobileAppProject/Interfaces/IPopUpService.cs create mode 100644 MobileAppProject/Interfaces/IUserService.cs create mode 100644 MobileAppProject/MauiProgram.cs create mode 100644 MobileAppProject/MobileAppProject.csproj create mode 100644 MobileAppProject/Model/Exercise.cs create mode 100644 MobileAppProject/Model/Level.cs create mode 100644 MobileAppProject/Model/MuscleGroup.cs create mode 100644 MobileAppProject/Model/Routine.cs create mode 100644 MobileAppProject/Model/RoutineExercise.cs create mode 100644 MobileAppProject/Model/User.cs create mode 100644 MobileAppProject/Platforms/Android/AndroidManifest.xml create mode 100644 MobileAppProject/Platforms/Android/MainActivity.cs create mode 100644 MobileAppProject/Platforms/Android/MainApplication.cs create mode 100644 MobileAppProject/Platforms/Android/Resources/values/colors.xml create mode 100644 MobileAppProject/Platforms/MacCatalyst/AppDelegate.cs create mode 100644 MobileAppProject/Platforms/MacCatalyst/Info.plist create mode 100644 MobileAppProject/Platforms/MacCatalyst/Program.cs create mode 100644 MobileAppProject/Platforms/Tizen/Main.cs create mode 100644 MobileAppProject/Platforms/Tizen/tizen-manifest.xml create mode 100644 MobileAppProject/Platforms/Windows/App.xaml create mode 100644 MobileAppProject/Platforms/Windows/App.xaml.cs create mode 100644 MobileAppProject/Platforms/Windows/Package.appxmanifest create mode 100644 MobileAppProject/Platforms/Windows/app.manifest create mode 100644 MobileAppProject/Platforms/iOS/AppDelegate.cs create mode 100644 MobileAppProject/Platforms/iOS/Info.plist create mode 100644 MobileAppProject/Platforms/iOS/Program.cs create mode 100644 MobileAppProject/Properties/launchSettings.json create mode 100644 MobileAppProject/Resources/AppIcon/appicon.svg create mode 100644 MobileAppProject/Resources/AppIcon/appiconfg.svg create mode 100644 MobileAppProject/Resources/Fonts/Fontspring-DEMO-grotesco-black.otf create mode 100644 MobileAppProject/Resources/Fonts/OpenSans-Regular.ttf create mode 100644 MobileAppProject/Resources/Fonts/OpenSans-Semibold.ttf create mode 100644 MobileAppProject/Resources/Fonts/PlayMeGames-Demo.otf create mode 100644 MobileAppProject/Resources/Fonts/Pokemon Classic.ttf create mode 100644 MobileAppProject/Resources/Fonts/Retro Gaming.ttf create mode 100644 MobileAppProject/Resources/Fonts/StayPixelRegular-EaOxl.ttf create mode 100644 MobileAppProject/Resources/Images/dotnet_bot.svg create mode 100644 MobileAppProject/Resources/Raw/AboutAssets.txt create mode 100644 MobileAppProject/Resources/Splash/splash.svg create mode 100644 MobileAppProject/Resources/Styles/Colors.xaml create mode 100644 MobileAppProject/Resources/Styles/Styles.xaml create mode 100644 MobileAppProject/Security/Hasher.cs create mode 100644 MobileAppProject/Services/DatabaseService.cs create mode 100644 MobileAppProject/Services/FacadeService.cs create mode 100644 MobileAppProject/Services/GymService.cs create mode 100644 MobileAppProject/Services/PopUpService.cs create mode 100644 MobileAppProject/Services/UserService.cs create mode 100644 MobileAppProject/View/CreateRoutineView.xaml create mode 100644 MobileAppProject/View/CreateRoutineView.xaml.cs create mode 100644 MobileAppProject/View/ExerciseDetailsView.xaml create mode 100644 MobileAppProject/View/ExerciseDetailsView.xaml.cs create mode 100644 MobileAppProject/View/ExercisesView.xaml create mode 100644 MobileAppProject/View/ExercisesView.xaml.cs create mode 100644 MobileAppProject/View/LoginView.xaml create mode 100644 MobileAppProject/View/LoginView.xaml.cs create mode 100644 MobileAppProject/View/MainView.xaml create mode 100644 MobileAppProject/View/MainView.xaml.cs create mode 100644 MobileAppProject/View/MuscleGroupView.xaml create mode 100644 MobileAppProject/View/MuscleGroupView.xaml.cs create mode 100644 MobileAppProject/View/RoutineExercisesView.xaml create mode 100644 MobileAppProject/View/RoutineExercisesView.xaml.cs create mode 100644 MobileAppProject/View/SignUpView.xaml create mode 100644 MobileAppProject/View/SignUpView.xaml.cs create mode 100644 MobileAppProject/View/UpdateExercisePopUp.xaml create mode 100644 MobileAppProject/View/UpdateExercisePopUp.xaml.cs create mode 100644 MobileAppProject/View/UpdateRoutinePopUp.xaml create mode 100644 MobileAppProject/View/UpdateRoutinePopUp.xaml.cs create mode 100644 MobileAppProject/ViewModel/BaseViewModel.cs create mode 100644 MobileAppProject/ViewModel/CreateRoutineViewModel.cs create mode 100644 MobileAppProject/ViewModel/ExerciseDetailsViewModel.cs create mode 100644 MobileAppProject/ViewModel/ExercisesViewModel.cs create mode 100644 MobileAppProject/ViewModel/LoginViewModel.cs create mode 100644 MobileAppProject/ViewModel/MainViewModel.cs create mode 100644 MobileAppProject/ViewModel/MuscleGroupViewModel.cs create mode 100644 MobileAppProject/ViewModel/RoutineExercisesViewModel.cs create mode 100644 MobileAppProject/ViewModel/SignUpViewModel.cs create mode 100644 README.md diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..1ff0c42 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,63 @@ +############################################################################### +# Set default behavior to automatically normalize line endings. +############################################################################### +* text=auto + +############################################################################### +# Set default behavior for command prompt diff. +# +# This is need for earlier builds of msysgit that does not have it on by +# default for csharp files. +# Note: This is only used by command line +############################################################################### +#*.cs diff=csharp + +############################################################################### +# Set the merge driver for project and solution files +# +# Merging from the command prompt will add diff markers to the files if there +# are conflicts (Merging from VS is not affected by the settings below, in VS +# the diff markers are never inserted). Diff markers may cause the following +# file extensions to fail to load in VS. An alternative would be to treat +# these files as binary and thus will always conflict and require user +# intervention with every merge. To do so, just uncomment the entries below +############################################################################### +#*.sln merge=binary +#*.csproj merge=binary +#*.vbproj merge=binary +#*.vcxproj merge=binary +#*.vcproj merge=binary +#*.dbproj merge=binary +#*.fsproj merge=binary +#*.lsproj merge=binary +#*.wixproj merge=binary +#*.modelproj merge=binary +#*.sqlproj merge=binary +#*.wwaproj merge=binary + +############################################################################### +# behavior for image files +# +# image files are treated as binary by default. +############################################################################### +#*.jpg binary +#*.png binary +#*.gif binary + +############################################################################### +# diff behavior for common document formats +# +# Convert binary document formats to text before diffing them. This feature +# is only available from the command line. Turn it on by uncommenting the +# entries below. +############################################################################### +#*.doc diff=astextplain +#*.DOC diff=astextplain +#*.docx diff=astextplain +#*.DOCX diff=astextplain +#*.dot diff=astextplain +#*.DOT diff=astextplain +#*.pdf diff=astextplain +#*.PDF diff=astextplain +#*.rtf diff=astextplain +#*.RTF diff=astextplain diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..9491a2f --- /dev/null +++ b/.gitignore @@ -0,0 +1,363 @@ +## 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/ +[Ww][Ii][Nn]32/ +[Aa][Rr][Mm]/ +[Aa][Rr][Mm]64/ +bld/ +[Bb]in/ +[Oo]bj/ +[Oo]ut/ +[Ll]og/ +[Ll]ogs/ + +# 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 +nunit-*.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/ + +# ASP.NET Scaffolding +ScaffoldingReadMe.txt + +# 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 + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# AxoCover is a Code Coverage Tool +.axoCover/* +!.axoCover/settings.json + +# Coverlet is a free, cross platform Code Coverage Tool +coverage*.json +coverage*.xml +coverage*.info + +# 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/ + +# Ionide (cross platform F# VS Code tools) working folder +.ionide/ + +# Fody - auto-generated XML schema +FodyWeavers.xsd \ No newline at end of file diff --git a/MobileAppProject.sln b/MobileAppProject.sln new file mode 100644 index 0000000..6472085 --- /dev/null +++ b/MobileAppProject.sln @@ -0,0 +1,27 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.0.31611.283 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MobileAppProject", "MobileAppProject\MobileAppProject.csproj", "{DDE78219-BA55-45D2-A656-530F53B0BFA5}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {DDE78219-BA55-45D2-A656-530F53B0BFA5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DDE78219-BA55-45D2-A656-530F53B0BFA5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DDE78219-BA55-45D2-A656-530F53B0BFA5}.Debug|Any CPU.Deploy.0 = Debug|Any CPU + {DDE78219-BA55-45D2-A656-530F53B0BFA5}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DDE78219-BA55-45D2-A656-530F53B0BFA5}.Release|Any CPU.Build.0 = Release|Any CPU + {DDE78219-BA55-45D2-A656-530F53B0BFA5}.Release|Any CPU.Deploy.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {61F7FB11-1E47-470C-91E2-47F8143E1572} + EndGlobalSection +EndGlobal diff --git a/MobileAppProject/App.xaml b/MobileAppProject/App.xaml new file mode 100644 index 0000000..61e6673 --- /dev/null +++ b/MobileAppProject/App.xaml @@ -0,0 +1,14 @@ + + + + + + + + + + + diff --git a/MobileAppProject/App.xaml.cs b/MobileAppProject/App.xaml.cs new file mode 100644 index 0000000..5d00bcc --- /dev/null +++ b/MobileAppProject/App.xaml.cs @@ -0,0 +1,13 @@ +using MobileAppProject.View; + +namespace MobileAppProject; + +public partial class App : Application +{ + public App() + { + InitializeComponent(); + + MainPage = new AppShell(); + } +} diff --git a/MobileAppProject/AppShell.xaml b/MobileAppProject/AppShell.xaml new file mode 100644 index 0000000..8dcef44 --- /dev/null +++ b/MobileAppProject/AppShell.xaml @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/MobileAppProject/AppShell.xaml.cs b/MobileAppProject/AppShell.xaml.cs new file mode 100644 index 0000000..6c5dbb9 --- /dev/null +++ b/MobileAppProject/AppShell.xaml.cs @@ -0,0 +1,9 @@ +namespace MobileAppProject; + +public partial class AppShell : Shell +{ + public AppShell() + { + InitializeComponent(); + } +} diff --git a/MobileAppProject/AppState.cs b/MobileAppProject/AppState.cs new file mode 100644 index 0000000..58a8267 --- /dev/null +++ b/MobileAppProject/AppState.cs @@ -0,0 +1,12 @@ +using MobileAppProject.Interfaces; +using MobileAppProject.Model; +namespace MobileAppProject +{ + public class AppState : IAppState + { + public User currentUser { get; set; } + public Routine selectedRoutine { get; set; } + public bool routineCreationMode { get; set; } + public AppState() { } + } +} diff --git a/MobileAppProject/Constants.cs b/MobileAppProject/Constants.cs new file mode 100644 index 0000000..2674e66 --- /dev/null +++ b/MobileAppProject/Constants.cs @@ -0,0 +1,19 @@ +using System; + +namespace MobileAppProject +{ + public static class Constants + { + public static string EndpointBase = "https://dc88-5-151-46-84.eu.ngrok.io/"; + + public static class Endpoints + { + public static string Users = "api/User/"; + public static string MuscleGroups = "api/MuscleGroup/"; + public static string Exercises = "api/Exercises/"; + public static string Routines = "api/Routines/"; + public static string RoutineExercises = "api/RoutineExercise/"; + } + + } +} diff --git a/MobileAppProject/Interfaces/IAppState.cs b/MobileAppProject/Interfaces/IAppState.cs new file mode 100644 index 0000000..83ec0a7 --- /dev/null +++ b/MobileAppProject/Interfaces/IAppState.cs @@ -0,0 +1,11 @@ +using MobileAppProject.Model; + +namespace MobileAppProject.Interfaces +{ + public interface IAppState + { + public User currentUser { get; set; } + public Routine selectedRoutine { get; set; } + public bool routineCreationMode { get; set; } + } +} diff --git a/MobileAppProject/Interfaces/IDatabaseService.cs b/MobileAppProject/Interfaces/IDatabaseService.cs new file mode 100644 index 0000000..2e43044 --- /dev/null +++ b/MobileAppProject/Interfaces/IDatabaseService.cs @@ -0,0 +1,13 @@ +using MobileAppProject.Model; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace MobileAppProject.Interfaces +{ + public interface IDatabaseService + { + } +} diff --git a/MobileAppProject/Interfaces/IFacadeService.cs b/MobileAppProject/Interfaces/IFacadeService.cs new file mode 100644 index 0000000..2191b97 --- /dev/null +++ b/MobileAppProject/Interfaces/IFacadeService.cs @@ -0,0 +1,28 @@ +using System; +using MobileAppProject.Model; + +namespace MobileAppProject.Interfaces +{ + public interface IFacadeService + { + public Task> GetUsers(); + public Task> GetAllGroups(); + public Task> GetAllExercises(); + public Task> GetRoutinesByUser(int? id); + public Task> GetExercisesByRoutine(int? id); + + + public Task CreateUser(User user); + public Task CreateRoutine(Routine routine); + + public Task AddRoutineExercise(RoutineExercise routineExercise); + + public Task UpdateRoutineExercise(int? id, RoutineExercise routineExercise); + + public Task UpdateRoutine(int? id, Routine routine); + + public Task DeleteRoutineExercise(int? id); + + public Task DeleteRoutine(int? id); + } +} diff --git a/MobileAppProject/Interfaces/IGymService.cs b/MobileAppProject/Interfaces/IGymService.cs new file mode 100644 index 0000000..2d2f936 --- /dev/null +++ b/MobileAppProject/Interfaces/IGymService.cs @@ -0,0 +1,31 @@ +using MobileAppProject.Model; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace MobileAppProject.Interfaces +{ + public interface IGymService + { + public Task> GetUsers(); + + public Task> GetAllGroups(); + + public Task> GetAllExercises(); + + public Task> GetRoutinesByUser(int? id); + + public Task> GetExercisesByRoutine(int? id); + + public Task CreateUser(User user); + public Task CreateRoutine(Routine routine); + public Task AddRoutineExercise(RoutineExercise routineExercise); + public Task UpdateRoutineExercise(int? id, RoutineExercise routineExercise); + public Task DeleteRoutineExercise(int? id); + public Task DeleteRoutine(int? id); + + public Task UpdateRoutine(int? id, Routine routine); + } +} diff --git a/MobileAppProject/Interfaces/IHasher.cs b/MobileAppProject/Interfaces/IHasher.cs new file mode 100644 index 0000000..71ba697 --- /dev/null +++ b/MobileAppProject/Interfaces/IHasher.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace MobileAppProject.Interfaces +{ + public interface IHasher + { + public string HashPassword(string password, out byte[] passwordsalt); + public bool VerifyPassword(string password, string passwordhash, byte[] passwordsalt); + } +} diff --git a/MobileAppProject/Interfaces/IPopUpService.cs b/MobileAppProject/Interfaces/IPopUpService.cs new file mode 100644 index 0000000..0161bd0 --- /dev/null +++ b/MobileAppProject/Interfaces/IPopUpService.cs @@ -0,0 +1,15 @@ +using CommunityToolkit.Maui.Views; +using MobileAppProject.Model; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace MobileAppProject.Interfaces +{ + public interface IPopUpService + { + public Task PopUp(Popup popup); + } +} diff --git a/MobileAppProject/Interfaces/IUserService.cs b/MobileAppProject/Interfaces/IUserService.cs new file mode 100644 index 0000000..439dc7e --- /dev/null +++ b/MobileAppProject/Interfaces/IUserService.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace MobileAppProject.Interfaces +{ + public interface IUserService + { + public Task> GetUsers(); + } +} diff --git a/MobileAppProject/MauiProgram.cs b/MobileAppProject/MauiProgram.cs new file mode 100644 index 0000000..6a97abc --- /dev/null +++ b/MobileAppProject/MauiProgram.cs @@ -0,0 +1,66 @@ +using Microsoft.Extensions.Logging; +using MobileAppProject.Services; +using MobileAppProject.Interfaces; +using MobileAppProject.Security; +using CommunityToolkit.Maui; +namespace MobileAppProject; + +public static class MauiProgram +{ + public static MauiApp CreateMauiApp() + { + var builder = MauiApp.CreateBuilder(); + builder + .UseMauiApp() + .UseMauiCommunityToolkit() + .ConfigureFonts(fonts => + { + fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular"); + fonts.AddFont("OpenSans-Semibold.ttf", "OpenSansSemibold"); + fonts.AddFont("Fontspring-DEMO-grotesco-black.otf", "Grotesco"); + fonts.AddFont("StayPixelRegular-EaOxl.ttf", "Pixel"); + fonts.AddFont("Pokemon Classic.ttf", "Pokemon"); + fonts.AddFont("Retro Gaming.ttf", "Retro"); + fonts.AddFont("PlayMeGames-Demo.otf", "Game"); + + }) + .RegisterViewsAndViewModels() + .RegisterServices(); +#if DEBUG + builder.Logging.AddDebug(); +#endif + return builder.Build(); + } + + public static MauiAppBuilder RegisterViewsAndViewModels(this MauiAppBuilder mauiAppBuilder) + { + mauiAppBuilder.Services.AddTransient(typeof(ViewModel.LoginViewModel)); + mauiAppBuilder.Services.AddTransient(typeof(View.LoginView)); + mauiAppBuilder.Services.AddTransient(typeof(View.MainView)); + mauiAppBuilder.Services.AddTransient(typeof(ViewModel.MainViewModel)); + mauiAppBuilder.Services.AddTransient(typeof(View.SignUpView)); + mauiAppBuilder.Services.AddTransient(typeof(ViewModel.SignUpViewModel)); + mauiAppBuilder.Services.AddTransient(typeof(View.MuscleGroupView)); + mauiAppBuilder.Services.AddTransient(typeof(ViewModel.MuscleGroupViewModel)); + mauiAppBuilder.Services.AddTransient(typeof(View.ExercisesView)); + mauiAppBuilder.Services.AddTransient(typeof(ViewModel.ExercisesViewModel)); + mauiAppBuilder.Services.AddTransient(typeof(View.ExerciseDetailsView)); + mauiAppBuilder.Services.AddTransient(typeof(ViewModel.ExerciseDetailsViewModel)); + mauiAppBuilder.Services.AddTransient(typeof(View.CreateRoutineView)); + mauiAppBuilder.Services.AddTransient(typeof(ViewModel.CreateRoutineViewModel)); + mauiAppBuilder.Services.AddTransient(typeof(View.RoutineExercisesView)); + mauiAppBuilder.Services.AddTransient(typeof(ViewModel.RoutineExercisesViewModel)); + return mauiAppBuilder; + } + + public static MauiAppBuilder RegisterServices(this MauiAppBuilder mauiAppBuilder) + { + //mauiAppBuilder.Services.AddTransient(); + mauiAppBuilder.Services.AddTransient(); + mauiAppBuilder.Services.AddTransient(); + mauiAppBuilder.Services.AddTransient(); + mauiAppBuilder.Services.AddTransient(); + mauiAppBuilder.Services.AddSingleton(); + return mauiAppBuilder; + } +} diff --git a/MobileAppProject/MobileAppProject.csproj b/MobileAppProject/MobileAppProject.csproj new file mode 100644 index 0000000..793fb80 --- /dev/null +++ b/MobileAppProject/MobileAppProject.csproj @@ -0,0 +1,104 @@ + + + + net7.0-android;net7.0-maccatalyst;net7.0-ios + $(TargetFrameworks);net7.0-windows10.0.19041.0 + + + Exe + MobileAppProject + true + true + enable + + + MobileAppProject + + + com.companyname.mobileappproject + 50b5704d-9fd0-46c3-8ad9-32fc94808763 + + + 1.0 + 1 + + 11.0 + 13.1 + 21.0 + 10.0.17763.0 + 10.0.17763.0 + 6.5 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + LoginView.xaml + + + MainView.xaml + + + SignUpView.xaml + + + UpdateExercisePopUp.xaml + + + + + + MSBuild:Compile + + + MSBuild:Compile + + + MSBuild:Compile + + + MSBuild:Compile + + + MSBuild:Compile + + + MSBuild:Compile + + + MSBuild:Compile + + + MSBuild:Compile + + + MSBuild:Compile + + + + diff --git a/MobileAppProject/Model/Exercise.cs b/MobileAppProject/Model/Exercise.cs new file mode 100644 index 0000000..998762d --- /dev/null +++ b/MobileAppProject/Model/Exercise.cs @@ -0,0 +1,12 @@ + + +namespace MobileAppProject.Model +{ + public class Exercise + { + public int ID { get; set; } + public string Name { get; set; } = string.Empty; + public string Description { get; set; } = string.Empty; + public int MuscleGroupID { get; set; } + } +} diff --git a/MobileAppProject/Model/Level.cs b/MobileAppProject/Model/Level.cs new file mode 100644 index 0000000..f44ee08 --- /dev/null +++ b/MobileAppProject/Model/Level.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace MobileAppProject.Model +{ + public class Level + { + public int ID { get; set; } + + public string Name { get; set; } = string.Empty; + + public int MinXP { get; set; } + } +} diff --git a/MobileAppProject/Model/MuscleGroup.cs b/MobileAppProject/Model/MuscleGroup.cs new file mode 100644 index 0000000..4e5690b --- /dev/null +++ b/MobileAppProject/Model/MuscleGroup.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace MobileAppProject.Model +{ + public class MuscleGroup + { + public int ID { get; set; } + public string Name { get; set; } = string.Empty; + //public List Exercises { get; set; } + } +} diff --git a/MobileAppProject/Model/Routine.cs b/MobileAppProject/Model/Routine.cs new file mode 100644 index 0000000..d4f98e7 --- /dev/null +++ b/MobileAppProject/Model/Routine.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace MobileAppProject.Model +{ + public class Routine + { + public int? ID { get; set; } + public string Name { get; set; } + public int? userID { get; set; } + public string Day { get; set; } + } +} diff --git a/MobileAppProject/Model/RoutineExercise.cs b/MobileAppProject/Model/RoutineExercise.cs new file mode 100644 index 0000000..b138d7e --- /dev/null +++ b/MobileAppProject/Model/RoutineExercise.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace MobileAppProject.Model +{ + public class RoutineExercise + { + public int? ID { get; set; } + public int? ExerciseID { get; set; } + public int? RoutineID { get; set; } + public int? Sets { get; set; } + public int? Reps { get; set; } + public int? Weight { get; set; } + public Exercise Exercise { get; set; } + } +} diff --git a/MobileAppProject/Model/User.cs b/MobileAppProject/Model/User.cs new file mode 100644 index 0000000..f85ae5a --- /dev/null +++ b/MobileAppProject/Model/User.cs @@ -0,0 +1,29 @@ +using CommunityToolkit.Mvvm.ComponentModel; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Text.Json.Serialization; +using System.Threading.Tasks; + +namespace MobileAppProject.Model +{ + public class User + { + public int? ID { get; set; } + public string username { get; set; } = string.Empty; + + public byte[] passwordsalt { get; set; } + + public string passwordhash { get; set; } = string.Empty; + + public string email { get; set; } = string.Empty; + + public int XP { get; set; } + + public int LevelID { get; set; } + + //[JsonIgnore] + //public Level Level { get; set; } + } +} diff --git a/MobileAppProject/Platforms/Android/AndroidManifest.xml b/MobileAppProject/Platforms/Android/AndroidManifest.xml new file mode 100644 index 0000000..e9937ad --- /dev/null +++ b/MobileAppProject/Platforms/Android/AndroidManifest.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/MobileAppProject/Platforms/Android/MainActivity.cs b/MobileAppProject/Platforms/Android/MainActivity.cs new file mode 100644 index 0000000..0ff5c46 --- /dev/null +++ b/MobileAppProject/Platforms/Android/MainActivity.cs @@ -0,0 +1,10 @@ +using Android.App; +using Android.Content.PM; +using Android.OS; + +namespace MobileAppProject; + +[Activity(Theme = "@style/Maui.SplashTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.UiMode | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize | ConfigChanges.Density)] +public class MainActivity : MauiAppCompatActivity +{ +} diff --git a/MobileAppProject/Platforms/Android/MainApplication.cs b/MobileAppProject/Platforms/Android/MainApplication.cs new file mode 100644 index 0000000..df8984b --- /dev/null +++ b/MobileAppProject/Platforms/Android/MainApplication.cs @@ -0,0 +1,15 @@ +using Android.App; +using Android.Runtime; + +namespace MobileAppProject; + +[Application] +public class MainApplication : MauiApplication +{ + public MainApplication(IntPtr handle, JniHandleOwnership ownership) + : base(handle, ownership) + { + } + + protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); +} diff --git a/MobileAppProject/Platforms/Android/Resources/values/colors.xml b/MobileAppProject/Platforms/Android/Resources/values/colors.xml new file mode 100644 index 0000000..c04d749 --- /dev/null +++ b/MobileAppProject/Platforms/Android/Resources/values/colors.xml @@ -0,0 +1,6 @@ + + + #512BD4 + #2B0B98 + #2B0B98 + \ No newline at end of file diff --git a/MobileAppProject/Platforms/MacCatalyst/AppDelegate.cs b/MobileAppProject/Platforms/MacCatalyst/AppDelegate.cs new file mode 100644 index 0000000..3d58e36 --- /dev/null +++ b/MobileAppProject/Platforms/MacCatalyst/AppDelegate.cs @@ -0,0 +1,9 @@ +using Foundation; + +namespace MobileAppProject; + +[Register("AppDelegate")] +public class AppDelegate : MauiUIApplicationDelegate +{ + protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); +} diff --git a/MobileAppProject/Platforms/MacCatalyst/Info.plist b/MobileAppProject/Platforms/MacCatalyst/Info.plist new file mode 100644 index 0000000..c96dd0a --- /dev/null +++ b/MobileAppProject/Platforms/MacCatalyst/Info.plist @@ -0,0 +1,30 @@ + + + + + UIDeviceFamily + + 1 + 2 + + UIRequiredDeviceCapabilities + + arm64 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + XSAppIconAssets + Assets.xcassets/appicon.appiconset + + diff --git a/MobileAppProject/Platforms/MacCatalyst/Program.cs b/MobileAppProject/Platforms/MacCatalyst/Program.cs new file mode 100644 index 0000000..ced6f3a --- /dev/null +++ b/MobileAppProject/Platforms/MacCatalyst/Program.cs @@ -0,0 +1,15 @@ +using ObjCRuntime; +using UIKit; + +namespace MobileAppProject; + +public class Program +{ + // This is the main entry point of the application. + static void Main(string[] args) + { + // if you want to use a different Application Delegate class from "AppDelegate" + // you can specify it here. + UIApplication.Main(args, null, typeof(AppDelegate)); + } +} diff --git a/MobileAppProject/Platforms/Tizen/Main.cs b/MobileAppProject/Platforms/Tizen/Main.cs new file mode 100644 index 0000000..a97d060 --- /dev/null +++ b/MobileAppProject/Platforms/Tizen/Main.cs @@ -0,0 +1,16 @@ +using System; +using Microsoft.Maui; +using Microsoft.Maui.Hosting; + +namespace MobileAppProject; + +class Program : MauiApplication +{ + protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); + + static void Main(string[] args) + { + var app = new Program(); + app.Run(args); + } +} diff --git a/MobileAppProject/Platforms/Tizen/tizen-manifest.xml b/MobileAppProject/Platforms/Tizen/tizen-manifest.xml new file mode 100644 index 0000000..3efa26b --- /dev/null +++ b/MobileAppProject/Platforms/Tizen/tizen-manifest.xml @@ -0,0 +1,15 @@ + + + + + + maui-appicon-placeholder + + + + + http://tizen.org/privilege/internet + + + + \ No newline at end of file diff --git a/MobileAppProject/Platforms/Windows/App.xaml b/MobileAppProject/Platforms/Windows/App.xaml new file mode 100644 index 0000000..89e7c3b --- /dev/null +++ b/MobileAppProject/Platforms/Windows/App.xaml @@ -0,0 +1,8 @@ + + + diff --git a/MobileAppProject/Platforms/Windows/App.xaml.cs b/MobileAppProject/Platforms/Windows/App.xaml.cs new file mode 100644 index 0000000..d0ff8ed --- /dev/null +++ b/MobileAppProject/Platforms/Windows/App.xaml.cs @@ -0,0 +1,24 @@ +using Microsoft.UI.Xaml; + +// To learn more about WinUI, the WinUI project structure, +// and more about our project templates, see: http://aka.ms/winui-project-info. + +namespace MobileAppProject.WinUI; + +/// +/// Provides application-specific behavior to supplement the default Application class. +/// +public partial class App : MauiWinUIApplication +{ + /// + /// Initializes the singleton application object. This is the first line of authored code + /// executed, and as such is the logical equivalent of main() or WinMain(). + /// + public App() + { + this.InitializeComponent(); + } + + protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); +} + diff --git a/MobileAppProject/Platforms/Windows/Package.appxmanifest b/MobileAppProject/Platforms/Windows/Package.appxmanifest new file mode 100644 index 0000000..02cc794 --- /dev/null +++ b/MobileAppProject/Platforms/Windows/Package.appxmanifest @@ -0,0 +1,46 @@ + + + + + + + + + $placeholder$ + User Name + $placeholder$.png + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/MobileAppProject/Platforms/Windows/app.manifest b/MobileAppProject/Platforms/Windows/app.manifest new file mode 100644 index 0000000..031912f --- /dev/null +++ b/MobileAppProject/Platforms/Windows/app.manifest @@ -0,0 +1,15 @@ + + + + + + + + true/PM + PerMonitorV2, PerMonitor + + + diff --git a/MobileAppProject/Platforms/iOS/AppDelegate.cs b/MobileAppProject/Platforms/iOS/AppDelegate.cs new file mode 100644 index 0000000..3d58e36 --- /dev/null +++ b/MobileAppProject/Platforms/iOS/AppDelegate.cs @@ -0,0 +1,9 @@ +using Foundation; + +namespace MobileAppProject; + +[Register("AppDelegate")] +public class AppDelegate : MauiUIApplicationDelegate +{ + protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); +} diff --git a/MobileAppProject/Platforms/iOS/Info.plist b/MobileAppProject/Platforms/iOS/Info.plist new file mode 100644 index 0000000..0004a4f --- /dev/null +++ b/MobileAppProject/Platforms/iOS/Info.plist @@ -0,0 +1,32 @@ + + + + + LSRequiresIPhoneOS + + UIDeviceFamily + + 1 + 2 + + UIRequiredDeviceCapabilities + + arm64 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + XSAppIconAssets + Assets.xcassets/appicon.appiconset + + diff --git a/MobileAppProject/Platforms/iOS/Program.cs b/MobileAppProject/Platforms/iOS/Program.cs new file mode 100644 index 0000000..ced6f3a --- /dev/null +++ b/MobileAppProject/Platforms/iOS/Program.cs @@ -0,0 +1,15 @@ +using ObjCRuntime; +using UIKit; + +namespace MobileAppProject; + +public class Program +{ + // This is the main entry point of the application. + static void Main(string[] args) + { + // if you want to use a different Application Delegate class from "AppDelegate" + // you can specify it here. + UIApplication.Main(args, null, typeof(AppDelegate)); + } +} diff --git a/MobileAppProject/Properties/launchSettings.json b/MobileAppProject/Properties/launchSettings.json new file mode 100644 index 0000000..edf8aad --- /dev/null +++ b/MobileAppProject/Properties/launchSettings.json @@ -0,0 +1,8 @@ +{ + "profiles": { + "Windows Machine": { + "commandName": "MsixPackage", + "nativeDebugging": false + } + } +} \ No newline at end of file diff --git a/MobileAppProject/Resources/AppIcon/appicon.svg b/MobileAppProject/Resources/AppIcon/appicon.svg new file mode 100644 index 0000000..9d63b65 --- /dev/null +++ b/MobileAppProject/Resources/AppIcon/appicon.svg @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/MobileAppProject/Resources/AppIcon/appiconfg.svg b/MobileAppProject/Resources/AppIcon/appiconfg.svg new file mode 100644 index 0000000..21dfb25 --- /dev/null +++ b/MobileAppProject/Resources/AppIcon/appiconfg.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/MobileAppProject/Resources/Fonts/Fontspring-DEMO-grotesco-black.otf b/MobileAppProject/Resources/Fonts/Fontspring-DEMO-grotesco-black.otf new file mode 100644 index 0000000000000000000000000000000000000000..3cd4ce56c7e1b687f280be12c131c083ea1f0b8f GIT binary patch literal 32364 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 literal 0 HcmV?d00001 diff --git a/MobileAppProject/Resources/Fonts/OpenSans-Regular.ttf b/MobileAppProject/Resources/Fonts/OpenSans-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..e2644a54abad6272c3afc7652317672e6a858007 GIT binary patch literal 107184 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 z zPf4;I?!H0)6fpftaXkPWOv(iZlfIAi{EHeJb}$JL0;Gh*#1G+ZaRf~e-nxJ`aPFuK z!dv05;Qc51+HdRj`C?jgM>8IQ*lq6;mFAKm-%Qs_C}Eju~O8tF`C)YY&Cjz|gLD#n=N zz$)1qf)Igabo1pmO* z=MuNw8o@b|cHV!#Cl~z{gc5t#!lm;|XIoSG8jr#lO~; zzgUX3(aY-Z)%Jg2W=wPs0Z|PL$+LI&{Y?CLRoO`%@u}m9vSwJ=^~R1pxrJJqru*Fr z1)>I#^-a(xnEYTm7Mj?r-k%pA^zt#rk|auv)oFjY`Gt5{VvkGGSzw0j;hXr(p;?Z% z8@wv=+$nGT{48DjvK7|Caz({M>pPZ%o20!}`;vZrQ6hUqmhi%*QEvw$ovZIK9tC)m zPkiuQDetqGh?`gEc{^?9VW7ic{DY14!M=}^_um_h=W`N+*9g8iQGgr2PWsaum%J?&`qgiWu(><&+}?CjscMIOOrE5OMM)s}+i|u;B|LZwW5b=4 z@HoRZ=9sQ^ehL9m3@#af!6iBrWv~CePxMfd{WIm~XGsf`x0rdV)6+lHq(Qg6tB7j~1&<(ik z?!1Aos#wQFUg!kz;EUuOurnNVX{@Yo%axxw9oyxt44^aq1G>VW-#Acn_Ptp2cIo3d zFO_%E>|)Opq-7Z4uV(EkqU_?|w-* zemSi{x0h6+- zs&=M77%RVLK z5F9O(#zQUMJw4yrG?#xsN?qY{x|-)Y)lQgyd4H|V!j(pG^~%D4U)o3FIeR}NCd1!{ z?^RFOU1;pTB7ZGTr#vYK_Tl+D%P4Pd)`#-@vhgh>luPBw2BT@o@wl|-5%L`Ey7glZ zZs6!Xjv%f@phPfXbmOSGj`fPf75J;(y*H;cyY*J>CHR2{r$6~VSPN;kX*&@oTXA+f z`OI_p5Jb4Xxt+&;-FFuX!}Q5Up#4vIRwWK*=TR+eB^OKZjR`HPod`Uj=v)fWu#7Rd zJknC8NDh~90ADe#)spys}e@TEwO_!!`eU(bO-X>nS)e8`J3Mbm;Y*hv}$37wYq myB^bdOUWzxMUm)BCZ9PxOxf`kVFPI;gyIe&u(Tc=oc{p~G8MG| literal 0 HcmV?d00001 diff --git a/MobileAppProject/Resources/Fonts/OpenSans-Semibold.ttf b/MobileAppProject/Resources/Fonts/OpenSans-Semibold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..f75b525a361a35536ffe2499ce6efd4f995b846f GIT binary patch literal 111068 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

F|@>6peUNpWl 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�SOGU}1(FLwR9Poq92 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 literal 0 HcmV?d00001 diff --git a/MobileAppProject/Resources/Fonts/PlayMeGames-Demo.otf b/MobileAppProject/Resources/Fonts/PlayMeGames-Demo.otf new file mode 100644 index 0000000000000000000000000000000000000000..2e54e03364c018e51d5377f897041034464cfa22 GIT binary patch literal 15912 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 MYSlWbMVm?g1^(#Zvj6}9 literal 0 HcmV?d00001 diff --git a/MobileAppProject/Resources/Fonts/Pokemon Classic.ttf b/MobileAppProject/Resources/Fonts/Pokemon Classic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..f2cb4ef31156f130cc29e40fdf916eae5261c5a7 GIT binary patch literal 91132 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 literal 0 HcmV?d00001 diff --git a/MobileAppProject/Resources/Fonts/Retro Gaming.ttf b/MobileAppProject/Resources/Fonts/Retro Gaming.ttf new file mode 100644 index 0000000000000000000000000000000000000000..0dca9968d8b3481dd66da12c58f38f970a15f614 GIT binary patch literal 31024 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 N3vd=gjKJcS{|6&hx*7lg literal 0 HcmV?d00001 diff --git a/MobileAppProject/Resources/Fonts/StayPixelRegular-EaOxl.ttf b/MobileAppProject/Resources/Fonts/StayPixelRegular-EaOxl.ttf new file mode 100644 index 0000000000000000000000000000000000000000..8c8d34df14d7ad4641bbde5713eb4a39e23f7152 GIT binary patch literal 130064 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%0AnA{TXfoM%Toe9*vmI})c_vdHUsd)1 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 literal 0 HcmV?d00001 diff --git a/MobileAppProject/Resources/Images/dotnet_bot.svg b/MobileAppProject/Resources/Images/dotnet_bot.svg new file mode 100644 index 0000000..abfaff2 --- /dev/null +++ b/MobileAppProject/Resources/Images/dotnet_bot.svg @@ -0,0 +1,93 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/MobileAppProject/Resources/Raw/AboutAssets.txt b/MobileAppProject/Resources/Raw/AboutAssets.txt new file mode 100644 index 0000000..15d6244 --- /dev/null +++ b/MobileAppProject/Resources/Raw/AboutAssets.txt @@ -0,0 +1,15 @@ +Any raw assets you want to be deployed with your application can be placed in +this directory (and child directories). Deployment of the asset to your application +is automatically handled by the following `MauiAsset` Build Action within your `.csproj`. + + + +These files will be deployed with you package and will be accessible using Essentials: + + async Task LoadMauiAsset() + { + using var stream = await FileSystem.OpenAppPackageFileAsync("AboutAssets.txt"); + using var reader = new StreamReader(stream); + + var contents = reader.ReadToEnd(); + } diff --git a/MobileAppProject/Resources/Splash/splash.svg b/MobileAppProject/Resources/Splash/splash.svg new file mode 100644 index 0000000..21dfb25 --- /dev/null +++ b/MobileAppProject/Resources/Splash/splash.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/MobileAppProject/Resources/Styles/Colors.xaml b/MobileAppProject/Resources/Styles/Colors.xaml new file mode 100644 index 0000000..364a518 --- /dev/null +++ b/MobileAppProject/Resources/Styles/Colors.xaml @@ -0,0 +1,44 @@ + + + + + black + black + #2B0B98 + White + Black + #E1E1E1 + #C8C8C8 + #ACACAC + #919191 + #6E6E6E + #404040 + #212121 + #141414 + + + + + + + + + + + + + + + #F7B548 + #FFD590 + #FFE5B9 + #28C2D1 + #7BDDEF + #C3F2F4 + #3E8EED + #72ACF1 + #A7CBF6 + + \ No newline at end of file diff --git a/MobileAppProject/Resources/Styles/Styles.xaml b/MobileAppProject/Resources/Styles/Styles.xaml new file mode 100644 index 0000000..a5ffbc0 --- /dev/null +++ b/MobileAppProject/Resources/Styles/Styles.xaml @@ -0,0 +1,406 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/MobileAppProject/Security/Hasher.cs b/MobileAppProject/Security/Hasher.cs new file mode 100644 index 0000000..b5da2a8 --- /dev/null +++ b/MobileAppProject/Security/Hasher.cs @@ -0,0 +1,35 @@ +using MobileAppProject.Interfaces; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Security.Cryptography; +using System.Text; +using System.Threading.Tasks; +//https://code-maze.com/csharp-hashing-salting-passwords-best-practices/ +namespace MobileAppProject.Security +{ + public class Hasher : IHasher + { + const int keySize = 64; + const int iterations = 350000; + HashAlgorithmName hashAlgorithm = HashAlgorithmName.SHA512; + + public string HashPassword(string password, out byte[] passwordsalt) + { + passwordsalt = RandomNumberGenerator.GetBytes(keySize); + var hash = Rfc2898DeriveBytes.Pbkdf2( + Encoding.UTF8.GetBytes(password), + passwordsalt, + iterations, + hashAlgorithm, + keySize); + return Convert.ToHexString(hash); + } + + public bool VerifyPassword(string password, string passwordhash, byte[] passwordsalt) + { + var hashToCompare = Rfc2898DeriveBytes.Pbkdf2(password, passwordsalt, iterations, hashAlgorithm, keySize); + return hashToCompare.SequenceEqual(Convert.FromHexString(passwordhash)); + } + } +} diff --git a/MobileAppProject/Services/DatabaseService.cs b/MobileAppProject/Services/DatabaseService.cs new file mode 100644 index 0000000..0a34e21 --- /dev/null +++ b/MobileAppProject/Services/DatabaseService.cs @@ -0,0 +1,18 @@ +using MobileAppProject.Model; +using MobileAppProject.Interfaces; + +namespace MobileAppProject.Services +{ + public class DatabaseService : IDatabaseService + { + + public DatabaseService() { + } + + + + + + + } +} diff --git a/MobileAppProject/Services/FacadeService.cs b/MobileAppProject/Services/FacadeService.cs new file mode 100644 index 0000000..2911516 --- /dev/null +++ b/MobileAppProject/Services/FacadeService.cs @@ -0,0 +1,78 @@ +using MobileAppProject.Interfaces; +using MobileAppProject.Model; +using System.Diagnostics; +using System.Text.Json; +using System.Text; + +namespace MobileAppProject.Services +{ + public class FacadeService : IFacadeService + { + //private readonly IDatabaseService databaseService; + private readonly IGymService gymService; + public FacadeService(IGymService gymService) + { + this.gymService = gymService; + } + + public Task> GetUsers() + { + return gymService.GetUsers(); + } + + public Task CreateUser(User user) + { + return gymService.CreateUser(user); + } + + public Task> GetAllGroups() + { + return gymService.GetAllGroups(); + } + + public Task> GetAllExercises() + { + return gymService.GetAllExercises(); + } + + public Task CreateRoutine(Routine routine) + { + return gymService.CreateRoutine(routine); + } + + public Task> GetRoutinesByUser(int? id) + { + return gymService.GetRoutinesByUser(id); + } + + public Task> GetExercisesByRoutine(int? id) + { + return gymService.GetExercisesByRoutine(id); + } + + public Task AddRoutineExercise(RoutineExercise routineExercise) + { + return gymService.AddRoutineExercise(routineExercise); + } + + public Task UpdateRoutineExercise(int? id, RoutineExercise routineExercise) + { + return gymService.UpdateRoutineExercise(id, routineExercise); + } + + public Task DeleteRoutineExercise(int? id) + { + return gymService.DeleteRoutineExercise(id); + } + + public Task DeleteRoutine(int? id) + { + return gymService.DeleteRoutine(id); + } + + public Task UpdateRoutine(int? id, Routine routine) + { + return gymService.UpdateRoutine(id, routine); + } + } +} diff --git a/MobileAppProject/Services/GymService.cs b/MobileAppProject/Services/GymService.cs new file mode 100644 index 0000000..770488e --- /dev/null +++ b/MobileAppProject/Services/GymService.cs @@ -0,0 +1,316 @@ +using MobileAppProject.Interfaces; +using System.Text.Json; +using System.Threading.Tasks; +using MobileAppProject.Model; +using System.Diagnostics; +using System.Text; +using Microsoft.Maui.Controls; +using System.Text.Json.Serialization; +//using Android.Media; + +namespace MobileAppProject.Services +{ + public class GymService : IGymService + { + HttpClient client; + JsonSerializerOptions serializerOptions; + + public GymService() { + + client= new HttpClient(); + serializerOptions = new JsonSerializerOptions + { + PropertyNamingPolicy = JsonNamingPolicy.CamelCase, + WriteIndented = true, + DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull + }; + } + + public async Task> GetUsers() + { + var users = new List(); + Uri uri = new Uri(string.Concat(Constants.EndpointBase, Constants.Endpoints.Users)); + + try + { + HttpResponseMessage response = await client.GetAsync(uri); + if(response.IsSuccessStatusCode) + { + string content = await response.Content.ReadAsStringAsync(); + return JsonSerializer.Deserialize>(content, serializerOptions); + } + return new List(); + + } catch(Exception ex) + { + Debug.WriteLine(@"\tERROR {0}", ex.Message); + return new List(); + + } + } + + public async Task CreateUser(User user) + { + Uri uri = new Uri(string.Concat(Constants.EndpointBase, Constants.Endpoints.Users)); + try + { + string json = JsonSerializer.Serialize(user, serializerOptions); + StringContent content = new StringContent(json, Encoding.UTF8, "application/json"); + + HttpResponseMessage response = null; + + response = await client.PostAsync(uri, content); + + if (response.IsSuccessStatusCode) + Debug.WriteLine(@"\tTodoItem successfully saved."); + return true; + + } catch(Exception ex) + { + Debug.WriteLine(@"\tERROR {0}", ex.Message); + return false; + } + } + + public async Task> GetAllGroups() + { + var users = new List(); + Uri uri = new Uri(string.Concat(Constants.EndpointBase, Constants.Endpoints.MuscleGroups)); + + try + { + HttpResponseMessage response = await client.GetAsync(uri); + if (response.IsSuccessStatusCode) + { + string content = await response.Content.ReadAsStringAsync(); + return JsonSerializer.Deserialize>(content, serializerOptions); + } + return new List(); + + } + catch (Exception ex) + { + Debug.WriteLine(@"\tERROR {0}", ex.Message); + return new List(); + + } + } + + public async Task> GetAllExercises() + { + var exercises = new List(); + Uri uri = new Uri(string.Concat(Constants.EndpointBase, Constants.Endpoints.Exercises)); + + try + { + HttpResponseMessage response = await client.GetAsync(uri); + if (response.IsSuccessStatusCode) + { + string content = await response.Content.ReadAsStringAsync(); + return JsonSerializer.Deserialize>(content, serializerOptions); + } + return new List(); + + } + catch (Exception ex) + { + Debug.WriteLine(@"\tERROR {0}", ex.Message); + return new List(); + + } + } + + public async Task CreateRoutine(Routine routine) + { + Uri uri = new Uri(string.Concat(Constants.EndpointBase, Constants.Endpoints.Routines)); + try + { + string json = JsonSerializer.Serialize(routine, serializerOptions); + StringContent content = new StringContent(json, Encoding.UTF8, "application/json"); + + HttpResponseMessage response = null; + + response = await client.PostAsync(uri, content); + + if (response.IsSuccessStatusCode) + Debug.WriteLine(@"\tTodoItem successfully saved."); + return true; + + } + catch (Exception ex) + { + Debug.WriteLine(@"\tERROR {0}", ex.Message); + return false; + } + } + + public async Task> GetRoutinesByUser(int? id) + { + Uri uri = new Uri(string.Concat(Constants.EndpointBase, Constants.Endpoints.Routines,"id?id=",id)); + + try + { + HttpResponseMessage response = await client.GetAsync(uri); + if (response.IsSuccessStatusCode) + { + string content = await response.Content.ReadAsStringAsync(); + return JsonSerializer.Deserialize>(content, serializerOptions); + } + return new List(); + + } + catch (Exception ex) + { + Debug.WriteLine(@"\tERROR {0}", ex.Message); + return new List(); + + } + } + + public async Task AddRoutineExercise(RoutineExercise routineExercise) + { + Uri uri = new Uri(string.Concat(Constants.EndpointBase, Constants.Endpoints.RoutineExercises)); + try + { + string json = JsonSerializer.Serialize(routineExercise, serializerOptions); + StringContent content = new StringContent(json, Encoding.UTF8, "application/json"); + + HttpResponseMessage response = null; + + response = await client.PostAsync(uri, content); + + if (response.IsSuccessStatusCode) + Debug.WriteLine(@"\tTodoItem successfully saved."); + return true; + + } + catch (Exception ex) + { + Debug.WriteLine(@"\tERROR {0}", ex.Message); + return false; + } + } + + public async Task> GetExercisesByRoutine(int? id) + { + Uri uri = new Uri(string.Concat(Constants.EndpointBase, Constants.Endpoints.RoutineExercises, "id?id=", id)); + + try + { + HttpResponseMessage response = await client.GetAsync(uri); + if (response.IsSuccessStatusCode) + { + string content = await response.Content.ReadAsStringAsync(); + return JsonSerializer.Deserialize>(content, serializerOptions); + } + return new List(); + + } + catch (Exception ex) + { + Debug.WriteLine(@"\tERROR {0}", ex.Message); + return new List(); + + } + + } + + public async Task UpdateRoutineExercise(int? id, RoutineExercise routineExercise) + { + Uri uri = new Uri(string.Concat(Constants.EndpointBase, Constants.Endpoints.RoutineExercises, "id?id=", id)); + try + { + + RoutineExercise newExercise = new RoutineExercise(); + newExercise.Sets= routineExercise.Sets; + newExercise.Reps= routineExercise.Reps; + newExercise.Weight=routineExercise.Weight; + string json = JsonSerializer.Serialize(newExercise, serializerOptions); + StringContent content = new StringContent(json, Encoding.UTF8, "application/json"); + + HttpResponseMessage response = null; + + response = await client.PutAsync(uri, content); + return true; + + } + catch (Exception ex) + { + Debug.WriteLine(@"\tERROR {0}", ex.Message); + return false; + } + } + + + public async Task DeleteRoutineExercise(int? id) + { + Uri uri = new Uri(string.Concat(Constants.EndpointBase, Constants.Endpoints.RoutineExercises, "id?id=", id)); + + try + { + HttpResponseMessage response = await client.DeleteAsync(uri); + if (response.IsSuccessStatusCode) + { + string content = await response.Content.ReadAsStringAsync(); + } + return true; + + } + catch (Exception ex) + { + Debug.WriteLine(@"\tERROR {0}", ex.Message); + return false; + + } + } + + public async Task DeleteRoutine(int? id) + { + Uri uri = new Uri(string.Concat(Constants.EndpointBase, Constants.Endpoints.Routines, "id?id=", id)); + + try + { + HttpResponseMessage response = await client.DeleteAsync(uri); + if (response.IsSuccessStatusCode) + { + string content = await response.Content.ReadAsStringAsync(); + } + return true; + + } + catch (Exception ex) + { + Debug.WriteLine(@"\tERROR {0}", ex.Message); + return false; + + } + } + + + public async Task UpdateRoutine(int? id, Routine routine) + { + Uri uri = new Uri(string.Concat(Constants.EndpointBase, Constants.Endpoints.Routines, "id?id=", id)); + try + { + + Routine newRoutine = new Routine(); + newRoutine.Name = routine.Name; + newRoutine.Day = routine.Day; + string json = JsonSerializer.Serialize(newRoutine, serializerOptions); + StringContent content = new StringContent(json, Encoding.UTF8, "application/json"); + + HttpResponseMessage response = null; + + response = await client.PutAsync(uri, content); + return true; + + } + catch (Exception ex) + { + Debug.WriteLine(@"\tERROR {0}", ex.Message); + return false; + } + } + + } +} diff --git a/MobileAppProject/Services/PopUpService.cs b/MobileAppProject/Services/PopUpService.cs new file mode 100644 index 0000000..2d3e683 --- /dev/null +++ b/MobileAppProject/Services/PopUpService.cs @@ -0,0 +1,21 @@ +using CommunityToolkit.Maui.Views; +using MobileAppProject.Interfaces; +using MobileAppProject.Model; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +// Code for interface and service from https://stackoverflow.com/questions/75722266/how-to-show-a-popup-from-viewmodel-maui +namespace MobileAppProject.Services +{ + public class PopUpService : IPopUpService + { + public async Task PopUp(Popup popup) + { + Page page = Application.Current?.MainPage ?? throw new NullReferenceException(); + return await page.ShowPopupAsync(popup); + } + } +} diff --git a/MobileAppProject/Services/UserService.cs b/MobileAppProject/Services/UserService.cs new file mode 100644 index 0000000..c774270 --- /dev/null +++ b/MobileAppProject/Services/UserService.cs @@ -0,0 +1,19 @@ +using MobileAppProject.Interfaces; +using MobileAppProject.Model; + +namespace MobileAppProject.Services +{ + class UserService : IUserService + { + public UserService() { } + + + public Task> GetUsers() + { + return Task.FromResult(new List() + { + + }); + } + } +} diff --git a/MobileAppProject/View/CreateRoutineView.xaml b/MobileAppProject/View/CreateRoutineView.xaml new file mode 100644 index 0000000..65f8c2f --- /dev/null +++ b/MobileAppProject/View/CreateRoutineView.xaml @@ -0,0 +1,48 @@ + + + +