Refactoring gestione sessione e persistenza impostazioni
Introdotto `SessionService` per centralizzare la gestione della sessione utente, migliorando la separazione delle responsabilità e la testabilità. Risolto il problema del caricamento del cookie di autenticazione all'avvio e garantita la persistenza delle checkbox di esportazione (`IncludeMetadata`, `RemoveAfterExport`, `OverwriteExisting`). Ottimizzata la gestione della barra degli indirizzi del browser con aggiornamenti locali immediati. Applicato il pattern "Load ? Modify ? Save" per il salvataggio delle impostazioni, migliorando la simmetria e la leggibilità del codice. Logging centralizzato e semplificato per eventi rilevanti. Aggiornata la documentazione per riflettere i cambiamenti e verificati i test per garantire il corretto funzionamento.
This commit is contained in:
@@ -104,7 +104,7 @@
|
||||
Style="{StaticResource FieldLabel}"/>
|
||||
|
||||
<TextBox x:Name="SettingsCookieTextBox"
|
||||
Height="150"
|
||||
Height="300"
|
||||
TextWrapping="Wrap"
|
||||
AcceptsReturn="True"
|
||||
VerticalScrollBarVisibility="Auto"
|
||||
@@ -254,7 +254,86 @@
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<!-- SEZIONE 4: Limiti Log -->
|
||||
<!-- SEZIONE 4: Stato Iniziale Aste -->
|
||||
<Border Background="#252526"
|
||||
BorderBrush="#3E3E42"
|
||||
BorderThickness="1"
|
||||
CornerRadius="4"
|
||||
Padding="20"
|
||||
Margin="0,0,0,20">
|
||||
<StackPanel>
|
||||
<TextBlock Text="Stato Iniziale Aste"
|
||||
Style="{StaticResource SectionHeader}"/>
|
||||
|
||||
<TextBlock Text="Configura come devono comportarsi le aste quando vengono caricate o aggiunte."
|
||||
Foreground="#999999"
|
||||
FontSize="12"
|
||||
TextWrapping="Wrap"
|
||||
Margin="0,0,0,20"/>
|
||||
|
||||
<!-- Stato all'apertura applicazione -->
|
||||
<TextBlock Text="Stato aste al caricamento dell'applicazione"
|
||||
Style="{StaticResource FieldLabel}"/>
|
||||
|
||||
<StackPanel Orientation="Horizontal" Margin="0,0,0,20">
|
||||
<RadioButton x:Name="LoadAuctionsStopped"
|
||||
Content="Fermate"
|
||||
GroupName="LoadState"
|
||||
IsChecked="True"
|
||||
ToolTip="Le aste salvate verranno caricate in stato fermo"/>
|
||||
<RadioButton x:Name="LoadAuctionsPaused"
|
||||
Content="In Pausa"
|
||||
GroupName="LoadState"
|
||||
ToolTip="Le aste salvate verranno caricate in pausa (pronte ad essere avviate)"/>
|
||||
<RadioButton x:Name="LoadAuctionsActive"
|
||||
Content="Attive"
|
||||
GroupName="LoadState"
|
||||
ToolTip="Le aste salvate verranno avviate automaticamente all'apertura"/>
|
||||
</StackPanel>
|
||||
|
||||
<!-- Stato nuove aste -->
|
||||
<TextBlock Text="Stato iniziale di una nuova asta aggiunta"
|
||||
Style="{StaticResource FieldLabel}"/>
|
||||
|
||||
<StackPanel Orientation="Horizontal" Margin="0,0,0,0">
|
||||
<RadioButton x:Name="NewAuctionStopped"
|
||||
Content="Fermata"
|
||||
GroupName="NewAuctionState"
|
||||
IsChecked="True"
|
||||
ToolTip="Le nuove aste verranno aggiunte in stato fermo"/>
|
||||
<RadioButton x:Name="NewAuctionPaused"
|
||||
Content="In Pausa"
|
||||
GroupName="NewAuctionState"
|
||||
ToolTip="Le nuove aste verranno aggiunte in pausa"/>
|
||||
<RadioButton x:Name="NewAuctionActive"
|
||||
Content="Attiva"
|
||||
GroupName="NewAuctionState"
|
||||
ToolTip="Le nuove aste verranno avviate automaticamente"/>
|
||||
</StackPanel>
|
||||
|
||||
<!-- Info Box -->
|
||||
<Border Style="{StaticResource InfoBox}" Margin="0,15,0,0">
|
||||
<StackPanel>
|
||||
<TextBlock Text="Informazioni"
|
||||
FontWeight="Bold"
|
||||
Foreground="#007ACC"
|
||||
Margin="0,0,0,10"/>
|
||||
<TextBlock TextWrapping="Wrap"
|
||||
Foreground="#CCCCCC"
|
||||
FontSize="12"
|
||||
LineHeight="18">
|
||||
• <Bold>Fermata:</Bold> L'asta non viene monitorata fino all'avvio manuale.<LineBreak/>
|
||||
• <Bold>In Pausa:</Bold> L'asta è pronta ma non punta automaticamente (utile per preparare le aste).<LineBreak/>
|
||||
• <Bold>Attiva:</Bold> L'asta viene monitorata e punta automaticamente quando necessario.<LineBreak/>
|
||||
<LineBreak/>
|
||||
<Bold>Consiglio:</Bold> Usa "Fermata" per caricare le aste senza avviarle, poi avvia manualmente quelle desiderate.
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<!-- SEZIONE 5: Limiti Log -->
|
||||
<Border Background="#252526"
|
||||
BorderBrush="#3E3E42"
|
||||
BorderThickness="1"
|
||||
|
||||
Reference in New Issue
Block a user