Add NocoDB events/RSVPs table config and improve session handling
All checks were successful
Build And Push Image / docker (push) Successful in 3m24s
All checks were successful
Build And Push Image / docker (push) Successful in 3m24s
- Add events and rsvps table ID fields to NocoDB settings dialog - Replace mock getUserSession with proper SessionManager integration - Improve type safety with explicit type casting and error handling - Add comprehensive events system bug analysis documentation
This commit is contained in:
@@ -101,6 +101,38 @@
|
||||
</div>
|
||||
</v-col>
|
||||
|
||||
<v-col cols="12">
|
||||
<v-text-field
|
||||
v-model="form.tables.events"
|
||||
label="Events Table ID"
|
||||
variant="outlined"
|
||||
:rules="[rules.required]"
|
||||
required
|
||||
placeholder="events-table-id"
|
||||
:error="hasFieldError('tables.events')"
|
||||
:error-messages="getFieldError('tables.events')"
|
||||
/>
|
||||
<div class="text-caption text-medium-emphasis mt-1">
|
||||
Configure the table ID for the Events functionality
|
||||
</div>
|
||||
</v-col>
|
||||
|
||||
<v-col cols="12">
|
||||
<v-text-field
|
||||
v-model="form.tables.rsvps"
|
||||
label="RSVPs Table ID"
|
||||
variant="outlined"
|
||||
:rules="[rules.required]"
|
||||
required
|
||||
placeholder="rsvps-table-id"
|
||||
:error="hasFieldError('tables.rsvps')"
|
||||
:error-messages="getFieldError('tables.rsvps')"
|
||||
/>
|
||||
<div class="text-caption text-medium-emphasis mt-1">
|
||||
Configure the table ID for the Event RSVPs functionality
|
||||
</div>
|
||||
</v-col>
|
||||
|
||||
<v-col cols="12">
|
||||
<v-divider class="my-2" />
|
||||
</v-col>
|
||||
@@ -217,7 +249,11 @@ const form = ref<NocoDBSettings>({
|
||||
url: 'https://database.monacousa.org',
|
||||
apiKey: '',
|
||||
baseId: '',
|
||||
tables: { members: '' }
|
||||
tables: {
|
||||
members: '',
|
||||
events: '',
|
||||
rsvps: ''
|
||||
}
|
||||
});
|
||||
|
||||
// Error handling
|
||||
@@ -268,9 +304,13 @@ const loadSettings = async () => {
|
||||
|
||||
if (response.success && response.data) {
|
||||
form.value = { ...response.data };
|
||||
// Ensure tables object exists
|
||||
// Ensure tables object exists with all required fields
|
||||
if (!form.value.tables) {
|
||||
form.value.tables = { members: '' };
|
||||
form.value.tables = {
|
||||
members: '',
|
||||
events: '',
|
||||
rsvps: ''
|
||||
};
|
||||
}
|
||||
}
|
||||
} catch (error: any) {
|
||||
@@ -363,7 +403,11 @@ const resetForm = () => {
|
||||
url: 'https://database.monacousa.org',
|
||||
apiKey: '',
|
||||
baseId: '',
|
||||
tables: { members: '' }
|
||||
tables: {
|
||||
members: '',
|
||||
events: '',
|
||||
rsvps: ''
|
||||
}
|
||||
};
|
||||
clearFieldErrors();
|
||||
connectionStatus.value = null;
|
||||
|
||||
Reference in New Issue
Block a user