Missing permission for users to remove their own signup

This commit is contained in:
quentin 2024-12-19 16:00:48 -06:00
parent cb5c5b6b4f
commit 0b88ebd2e8
11 changed files with 116 additions and 83 deletions

View File

@ -25,5 +25,18 @@
<jdbc-url>jdbc:sqlite:$USER_HOME$/.local/share/scoreSphere/core.sqlite</jdbc-url> <jdbc-url>jdbc:sqlite:$USER_HOME$/.local/share/scoreSphere/core.sqlite</jdbc-url>
<working-dir>$ProjectFileDir$</working-dir> <working-dir>$ProjectFileDir$</working-dir>
</data-source> </data-source>
<data-source source="LOCAL" name="SASG" uuid="65a22a18-3e0c-46e8-afbf-198b2bbb4f78">
<driver-ref>mysql.8</driver-ref>
<synchronize>true</synchronize>
<jdbc-driver>com.mysql.cj.jdbc.Driver</jdbc-driver>
<jdbc-url>jdbc:mysql://localhost:5618</jdbc-url>
<jdbc-additional-properties>
<property name="com.intellij.clouds.kubernetes.db.host.port" />
<property name="com.intellij.clouds.kubernetes.db.enabled" value="false" />
<property name="com.intellij.clouds.kubernetes.db.resource.type" value="Deployment" />
<property name="com.intellij.clouds.kubernetes.db.container.port" />
</jdbc-additional-properties>
<working-dir>$ProjectFileDir$</working-dir>
</data-source>
</component> </component>
</project> </project>

View File

@ -1,14 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project version="4"> <project version="4">
<component name="PublishConfigData" serverName="boysserver" remoteFilesAllowedToDisappearOnAutoupload="false"> <component name="PublishConfigData" serverName="temp" remoteFilesAllowedToDisappearOnAutoupload="false" />
<serverData>
<paths name="boysserver">
<serverdata>
<mappings>
<mapping deploy="/" local="$PROJECT_DIR$" web="/" />
</mappings>
</serverdata>
</paths>
</serverData>
</component>
</project> </project>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="SqlDialectMappings">
<file url="file://$PROJECT_DIR$/Setup/Filler/Permissions.sql" dialect="MySQL" />
</component>
</project>

View File

@ -2,6 +2,8 @@
<project version="4"> <project version="4">
<component name="SshConfigs"> <component name="SshConfigs">
<configs> <configs>
<sshConfig host="4.72.148.132.host.secureserver.net" id="803b7675-648e-4d0f-8433-0abf8725c35f" keyPath="$USER_HOME$/downloads/id" port="22" nameFormat="DESCRIPTIVE" username="dotnet" useOpenSSHConfig="false" />
<sshConfig host="4.72.148.132.host.secureserver.net" id="7db7f912-3e0a-4cfc-90fe-563abe88fa2c" keyPath="$USER_HOME$/.ssh/sanantonioseniorgolf" port="22" nameFormat="DESCRIPTIVE" username="oaksana" useOpenSSHConfig="true" />
<sshConfig host="192.168.1.52" id="e58264ea-75c0-4f9e-aa5c-b6ece113fffb" keyPath="$USER_HOME$/.ssh/dotnet" port="22" nameFormat="DESCRIPTIVE" username="dotnet" /> <sshConfig host="192.168.1.52" id="e58264ea-75c0-4f9e-aa5c-b6ece113fffb" keyPath="$USER_HOME$/.ssh/dotnet" port="22" nameFormat="DESCRIPTIVE" username="dotnet" />
</configs> </configs>
</component> </component>

View File

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="WebServers">
<option name="servers">
<webServer id="a7501199-1083-42a2-9cb8-0a02a845371d" name="temp" url="http://signup.sanantonioseniorgolf.com/">
<fileTransfer rootFolder="/home/dotnet/signupBackend.rewrite/API" accessType="SFTP" host="4.72.148.132.host.secureserver.net" port="22" sshConfigId="803b7675-648e-4d0f-8433-0abf8725c35f" sshConfig="dotnet@4.72.148.132.host.secureserver.net:22 key" keyPair="true">
<advancedOptions>
<advancedOptions dataProtectionLevel="Private" keepAliveTimeout="0" passiveMode="true" shareSSLContext="true" />
</advancedOptions>
</fileTransfer>
</webServer>
</option>
</component>
</project>

View File

@ -10,6 +10,7 @@ namespace API.Authentication.GrantNames
public const string CanUpdate = "api.signup.update"; public const string CanUpdate = "api.signup.update";
public const string CanDeleteAny = "api.signup.delete.any"; public const string CanDeleteAny = "api.signup.delete.any";
public const string CanDelete = "api.signup.delete"; public const string CanDelete = "api.signup.delete";
public const string CanDeleteSelf = "api.signup.delete.self";
public const string CanAddOthers = "api.signup.add.others"; public const string CanAddOthers = "api.signup.add.others";
} }
} }

View File

@ -42,6 +42,7 @@ namespace API.Authentication
public bool canDelete(Signup model, User user) public bool canDelete(Signup model, User user)
{ {
return _grantManager.hasGrant(user.permissionId, SignupGrantNames.CanDeleteAny) || return _grantManager.hasGrant(user.permissionId, SignupGrantNames.CanDeleteAny) ||
(model.userId == user.id && _grantManager.hasGrant(user.permissionId, SignupGrantNames.CanDeleteSelf)) ||
_grantManager.getULongValues(user.permissionId, SignupGrantNames.CanDelete).Exists(x => x == model.id); _grantManager.getULongValues(user.permissionId, SignupGrantNames.CanDelete).Exists(x => x == model.id);
} }
} }

View File

@ -54,7 +54,7 @@ namespace API.Controllers
if (registerDTO.password == null) if (registerDTO.password == null)
registerDTO.password = registerDTO.phoneNumber; registerDTO.password = registerDTO.phoneNumber;
if (permissionId == null) if (permissionId != null)
{ {
User? user = getUser(User); User? user = getUser(User);
if (user == null) if (user == null)
@ -66,8 +66,7 @@ namespace API.Controllers
return Ok(createdUser); return Ok(createdUser);
} }
else {
{
UserDTO? user = _userManager.registerUser(registerDTO); UserDTO? user = _userManager.registerUser(registerDTO);
if (user == null) if (user == null)

View File

@ -1,207 +1,210 @@
SET FOREIGN_KEY_CHECKS = 0; SET FOREIGN_KEY_CHECKS = 0;
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.color.get.all', 1, NOW(), 1); VALUES ('api.color.get.all', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.color.get.any', 1, NOW(), 1); VALUES ('api.color.get.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.color.get', 1, NOW(), 1); VALUES ('api.color.get', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.color.add', 1, NOW(), 1); VALUES ('api.color.add', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.color.update.any', 1, NOW(), 1); VALUES ('api.color.update.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.color.update', 1, NOW(), 1); VALUES ('api.color.update', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.color.delete.any', 1, NOW(), 1); VALUES ('api.color.delete.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.color.delete', 1, NOW(), 1); VALUES ('api.color.delete', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.event.get.all', 1, NOW(), 1); VALUES ('api.event.get.all', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.event.get.any', 1, NOW(), 1); VALUES ('api.event.get.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.event.get', 1, NOW(), 1); VALUES ('api.event.get', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.event.add', 1, NOW(), 1); VALUES ('api.event.add', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.event.update.any', 1, NOW(), 1); VALUES ('api.event.update.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.event.update', 1, NOW(), 1); VALUES ('api.event.update', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.event.delete.any', 1, NOW(), 1); VALUES ('api.event.delete.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.event.delete', 1, NOW(), 1); VALUES ('api.event.delete', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.grant.get.self', 1, NOW(), 1); VALUES ('api.grant.get.self', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.grant.get.all', 1, NOW(), 1); VALUES ('api.grant.get.all', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.grant.get.any', 1, NOW(), 1); VALUES ('api.grant.get.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.grant.get', 1, NOW(), 1); VALUES ('api.grant.get', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.grant.add', 1, NOW(), 1); VALUES ('api.grant.add', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.grant.update.any', 1, NOW(), 1); VALUES ('api.grant.update.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.grant.update', 1, NOW(), 1); VALUES ('api.grant.update', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.grant.delete.any', 1, NOW(), 1); VALUES ('api.grant.delete.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.grant.delete', 1, NOW(), 1); VALUES ('api.grant.delete', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.image.get.all', 1, NOW(), 1); VALUES ('api.image.get.all', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.image.get.any', 1, NOW(), 1); VALUES ('api.image.get.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.image.get', 1, NOW(), 1); VALUES ('api.image.get', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.image.add', 1, NOW(), 1); VALUES ('api.image.add', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.image.update.any', 1, NOW(), 1); VALUES ('api.image.update.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.image.update', 1, NOW(), 1); VALUES ('api.image.update', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.image.delete.any', 1, NOW(), 1); VALUES ('api.image.delete.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.image.delete', 1, NOW(), 1); VALUES ('api.image.delete', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.permission.get.all', 1, NOW(), 1); VALUES ('api.permission.get.all', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.permission.get.any', 1, NOW(), 1); VALUES ('api.permission.get.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.permission.get', 1, NOW(), 1); VALUES ('api.permission.get', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.permission.add', 1, NOW(), 1); VALUES ('api.permission.add', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.permission.update.any', 1, NOW(), 1); VALUES ('api.permission.update.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.permission.update', 1, NOW(), 1); VALUES ('api.permission.update', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.permission.delete.any', 1, NOW(), 1); VALUES ('api.permission.delete.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.permission.delete', 1, NOW(), 1); VALUES ('api.permission.delete', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.savedEvent.get.all', 1, NOW(), 1); VALUES ('api.savedEvent.get.all', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.savedEvent.get.any', 1, NOW(), 1); VALUES ('api.savedEvent.get.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.savedEvent.get', 1, NOW(), 1); VALUES ('api.savedEvent.get', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.savedEvent.add', 1, NOW(), 1); VALUES ('api.savedEvent.add', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.savedEvent.update.any', 1, NOW(), 1); VALUES ('api.savedEvent.update.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.savedEvent.update', 1, NOW(), 1); VALUES ('api.savedEvent.update', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.savedEvent.delete.any', 1, NOW(), 1); VALUES ('api.savedEvent.delete.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.savedEvent.delete', 1, NOW(), 1); VALUES ('api.savedEvent.delete', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.user.get.all', 1, NOW(), 1); VALUES ('api.user.get.all', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.user.get.any', 1, NOW(), 1); VALUES ('api.user.get.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.user.get', 1, NOW(), 1); VALUES ('api.user.get', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.user.add', 1, NOW(), 1); VALUES ('api.user.add', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.user.update.any', 1, NOW(), 1); VALUES ('api.user.update.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.user.update', 1, NOW(), 1); VALUES ('api.user.update', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.user.update.self', 1, NOW(), 1); VALUES ('api.user.update.self', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.user.update.names', 1, NOW(), 1); VALUES ('api.user.update.names', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.user.update.phoneNumber', 1, NOW(), 1); VALUES ('api.user.update.phoneNumber', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.user.update.permission', 1, NOW(), 1); VALUES ('api.user.update.permission', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.user.delete.any', 1, NOW(), 1); VALUES ('api.user.delete.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.signup.get.all', 1, NOW(), 1); VALUES ('api.signup.get.all', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.signup.get.any', 1, NOW(), 1); VALUES ('api.signup.get.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.signup.get', 1, NOW(), 1); VALUES ('api.signup.get', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.signup.add', 1, NOW(), 1); VALUES ('api.signup.add', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.signup.update.any', 1, NOW(), 1); VALUES ('api.signup.update.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.signup.update', 1, NOW(), 1); VALUES ('api.signup.update', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.signup.delete.any', 1, NOW(), 1); VALUES ('api.signup.delete.any', 1, NOW(), 1);
INSERT INTO san_antonio_senior_golf.grants (name, permissionId, updated, updater) INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.signup.delete', 1, NOW(), 1); VALUES ('api.signup.delete', 1, NOW(), 1);
INSERT INTO grants (name, permissionId, updated, updater)
VALUES ('api.signup.add.others', 1, NOW(), 1);
SET FOREIGN_KEY_CHECKS = 1; SET FOREIGN_KEY_CHECKS = 1;

View File

@ -1,6 +1,9 @@
SET FOREIGN_KEY_CHECKS = 0; SET FOREIGN_KEY_CHECKS = 0;
INSERT INTO san_antonio_senior_golf.permissions (name, updated, updater) INSERT INTO permissions (name, updated, updater)
VALUES ('admin', NOW(), 1); VALUES ('admin', NOW(), 1);
INSERT INTO permissions (name, updated, updater)
VALUES ('attendee', NOW(), 1);
SET FOREIGN_KEY_CHECKS = 1; SET FOREIGN_KEY_CHECKS = 1;

View File

@ -1,4 +1,5 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation"> <wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AAuthenticationHttpContextExtensions_002Ecs_002Fl_003A_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003F_002Econfig_003FJetBrains_003FRider2024_002E2_003Fresharper_002Dhost_003FSourcesCache_003Feb8b15bbf6ed38ef49b0b77ac383bba3c22ce8dbcff5a4798cdebe3013d9ea_003FAuthenticationHttpContextExtensions_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ADbContext_002Ecs_002Fl_003A_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003F_002Econfig_003FJetBrains_003FRider2024_002E2_003Fresharper_002Dhost_003FSourcesCache_003F3bd4df5aff92cabbc4d630be64227073db1b8539b3a1e47786b4b189d7cdb7_003FDbContext_002Ecs/@EntryIndexedValue">ForceIncluded</s:String> <s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ADbContext_002Ecs_002Fl_003A_002E_002E_003F_002E_002E_003F_002E_002E_003F_002E_002E_003F_002Econfig_003FJetBrains_003FRider2024_002E2_003Fresharper_002Dhost_003FSourcesCache_003F3bd4df5aff92cabbc4d630be64227073db1b8539b3a1e47786b4b189d7cdb7_003FDbContext_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/Environment/UnitTesting/UnitTestSessionStore/Sessions/=d51071ba_002D6946_002D464f_002Db1ff_002D8183035b48e5/@EntryIndexedValue">&lt;SessionState ContinuousTestingMode="0" IsActive="True" Name="Test1" xmlns="urn:schemas-jetbrains-com:jetbrains-ut-session"&gt; <s:String x:Key="/Default/Environment/UnitTesting/UnitTestSessionStore/Sessions/=d51071ba_002D6946_002D464f_002Db1ff_002D8183035b48e5/@EntryIndexedValue">&lt;SessionState ContinuousTestingMode="0" IsActive="True" Name="Test1" xmlns="urn:schemas-jetbrains-com:jetbrains-ut-session"&gt;
&lt;TestAncestor&gt; &lt;TestAncestor&gt;