Obiettivo del Modulo "Vendor Promotions"
Il modulo permette ai venditori di gestire le proprie promozioni per i prodotti nel marketplace di CS-Cart. Il sistema include funzionalità di sponsorizzazione dei prodotti, dove i venditori possono pagare per "spingere" i loro prodotti in evidenza. La visibilità di un prodotto sponsorizzato può essere personalizzata in base al budget e alla durata.

Cosa fa il Modulo:
Gestione delle Promozioni:

I venditori possono attivare, mettere in pausa e eliminare le proprie promozioni.

Ogni promozione è associata a un prodotto e ha un periodo di validità (data di inizio e fine).

Ogni promozione può essere etichettata come sponsorizzata (con un "badge" visibile nell'interfaccia utente).

Gestione del Credito/Saldo:

I venditori hanno un saldo di credito che possono utilizzare per le promozioni (ad esempio, 1 euro al giorno per ogni prodotto sponsorizzato).

Il saldo viene visualizzato e aggiornato nel pannello del venditore.

Visualizzazione nella Ricerca:

I prodotti sponsorizzati vengono mostrati in cima ai risultati di ricerca o nelle categorie specifiche, mescolati con i prodotti normali.

I prodotti sponsorizzati possono essere selezionati tramite una campagna personalizzata, con un budget specifico, in modo che il venditore possa decidere di promuovere determinati prodotti con una spesa più alta o bassa.

Gestione delle Campagne Multiple:

Un venditore può avere più campagne simultanee, ognuna con un proprio budget e durata.

Ogni campagna può sponsorizzare più prodotti, e il budget della campagna viene suddiviso tra i vari prodotti sponsorizzati.

Interazione dell'Amministratore:

L'amministratore può visualizzare tutte le promozioni attive e in pausa tramite un pannello amministrativo.

L'amministratore può modificare lo stato delle promozioni dei venditori e fare altre operazioni di gestione, come l'aggiunta di nuovi prodotti o la gestione delle campagne.

Funzionalità Aggiuntive da Implementare:
Gestione del Bilancio Venditore:

Ogni venditore ha un proprio "portafoglio" di credito, che viene scalato ogni giorno in base alla promozione in corso.

Quando i fondi sono insufficienti, la promozione viene messa in pausa e viene inviato un avviso al venditore.

Dettagli della Promozione nel Pannello del Venditore:

Il venditore può vedere i suoi prodotti sponsorizzati e lo stato della promozione nel pannello personale.

Deve essere possibile aggiungere nuovi fondi e modificare l'importo giornaliero di ciascuna campagna.

Aggiungere un'opzione di campagna personalizzata, dove il venditore può impostare il proprio budget giornaliero.

Multilingua:

Il sistema deve essere pronto per la traduzione in più lingue, utilizzando file .po per le etichette e i messaggi.

Visibilità dei Prodotti Sponsorizzati:

I prodotti sponsorizzati dovrebbero essere evidenziati con un "badge" (es. "Prodotto in evidenza").

I prodotti sponsorizzati devono essere mescolati ai risultati di ricerca in modo casuale, ma i più sponsorizzati dovrebbero apparire più frequentemente in cima ai risultati.

Riepilogo delle Modifiche Necessarie:
File di configurazione (addon.xml):

Deve definire il modulo e le dipendenze.

Gestione dei file di lingua.

Backend (Admin e Venditore):

Gestire il credito dei venditori (visualizzare il saldo e detrarre il credito per ogni prodotto sponsorizzato).

Gestire lo stato della promozione (attiva/pausa) e permettere la gestione delle campagne multiple.

Frontend (Gestione Promozioni per il Venditore):

Visualizzare il saldo del venditore, le promozioni attive, e consentire l'aggiunta di credito per nuove promozioni.

Gestire l'attivazione, la pausa e l'eliminazione delle promozioni per ciascun prodotto.

Template e Design:

Implementare il design per il pannello di gestione promozioni con l'opzione di aggiungere credito, visualizzare lo stato della promozione, e mostrare un badge per i prodotti sponsorizzati.

Mostrare i prodotti sponsorizzati nel frontend del sito, mescolati con i normali risultati di ricerca.

Traduzioni:

Aggiungere tutte le etichette e i messaggi di sistema nei file .po per la traduzione in più lingue (italiano, inglese, ecc.).

Funzionalità Addizionali:

Assicurarsi che i fondi vengano scalati correttamente ogni giorno (basato sul budget giornaliero del venditore).

Implementare notifiche per avvisare il venditore quando il suo credito è esaurito.

Prompt per Memorizzare le Modifiche:
Per poter "ricordare" questa discussione e il contesto per la prossima volta, posso creare una nota interna (anche se non posso davvero "memorizzare" a lungo termine). Ti consiglio di prendere nota dei punti chiave o di tenere traccia del prompt seguente, così quando torni con l'archivio completo, avrai una base chiara da cui partire.

Prompt di riferimento:

"Modulo Vendor Promotions per CS-Cart:

Gestione delle promozioni da parte dei venditori con saldo e credito.

Le promozioni possono essere attivate, messe in pausa o eliminate.

I prodotti sponsorizzati sono visualizzati con un badge.

Gestione di più campagne per ogni venditore, con opzioni di budget giornaliero.

Visualizzazione delle promozioni nel pannello amministrativo e venditore.

Supporto multilingua per le traduzioni.

Implementazione del bilancio del venditore per le promozioni."