subscriptionEditForm: permissions

This commit is contained in:
Alex
2025-02-18 11:37:16 +01:00
parent 64b368e617
commit 42edc70490

View File

@@ -29,11 +29,8 @@
included_hours_per_month: 0 included_hours_per_month: 0
}; };
$: { console.log('Opening subscription modal with:', subscription);
if (subscription !== undefined) { $: subscription = subscription || { ...blankSubscription };
subscription = subscription === null ? { ...blankSubscription } : { ...subscription };
}
}
$: isLoading = subscription === undefined || user === undefined; $: isLoading = subscription === undefined || user === undefined;
let isUpdating = false; let isUpdating = false;
@@ -56,8 +53,10 @@
<SmallLoader width={30} message={$t('loading.subscription_data')} /> <SmallLoader width={30} message={$t('loading.subscription_data')} />
{:else if user && subscription} {:else if user && subscription}
<form class="content" action="?/updateSubscription" method="POST" use:enhance={handleUpdate}> <form class="content" action="?/updateSubscription" method="POST" use:enhance={handleUpdate}>
<input name="usbscription[id]" type="hidden" bind:value={subscription.id} /> <input name="susbscription[id]" type="hidden" bind:value={subscription.id} />
<h1 class="step-title" style="text-align: center;">{$t('subscritption.edit')}</h1> <h1 class="step-title" style="text-align: center;">
{subscription.id ? $t('subscription.edit') : $t('subscription.create')}
</h1>
{#if form?.errors} {#if form?.errors}
{#each form?.errors as error (error.id)} {#each form?.errors as error (error.id)}
<h4 <h4
@@ -76,7 +75,7 @@
bind:value={subscription.name} bind:value={subscription.name}
placeholder={$t('placeholder.subscription_name')} placeholder={$t('placeholder.subscription_name')}
required={true} required={true}
readonly={user.role_id < 8} readonly={subscription.id > 0}
/> />
<InputField <InputField
name="subscription[details]" name="subscription[details]"
@@ -92,7 +91,7 @@
label={$t('subscription.conditions')} label={$t('subscription.conditions')}
bind:value={subscription.conditions} bind:value={subscription.conditions}
placeholder={$t('placeholder.subscription_conditions')} placeholder={$t('placeholder.subscription_conditions')}
readonly={user.role_id < 8} readonly={subscription.id > 0}
/> />
<InputField <InputField
name="subscription[monthly_fee]" name="subscription[monthly_fee]"
@@ -101,7 +100,7 @@
bind:value={subscription.monthly_fee} bind:value={subscription.monthly_fee}
placeholder={$t('placeholder.subscription_monthly_fee')} placeholder={$t('placeholder.subscription_monthly_fee')}
required={true} required={true}
readonly={user.role_id < 8} readonly={subscription.id > 0}
/> />
<InputField <InputField
name="subscription[hourly_rate]" name="subscription[hourly_rate]"
@@ -109,21 +108,21 @@
label={$t('subscription.hourly_rate')} label={$t('subscription.hourly_rate')}
bind:value={subscription.hourly_rate} bind:value={subscription.hourly_rate}
required={true} required={true}
readonly={user.role_id < 8} readonly={subscription.id > 0}
/> />
<InputField <InputField
name="subscription[included_hours_per_year]" name="subscription[included_hours_per_year]"
type="number" type="number"
label={$t('subscription.included_hours_per_year')} label={$t('subscription.included_hours_per_year')}
bind:value={subscription.included_hours_per_year} bind:value={subscription.included_hours_per_year}
readonly={user.role_id < 8} readonly={subscription.id > 0}
/> />
<InputField <InputField
name="included_hours_per_month" name="included_hours_per_month"
type="number" type="number"
label={$t('subscription.included_hours_per_month')} label={$t('subscription.included_hours_per_month')}
bind:value={subscription.included_hours_per_month} bind:value={subscription.included_hours_per_month}
readonly={user.role_id < 8} readonly={subscription.id > 0}
/> />
</div> </div>
<div class="button-container"> <div class="button-container">