mirror of
https://git.v0id.ovh/n3wt-innov/n3wt-school.git
synced 2026-01-29 07:53:23 +00:00
chore: Config IMAP dans le Front
This commit is contained in:
@ -21,12 +21,14 @@ export default function SettingsPage() {
|
|||||||
const [password, setPassword] = useState('');
|
const [password, setPassword] = useState('');
|
||||||
const [confirmPassword, setConfirmPassword] = useState('');
|
const [confirmPassword, setConfirmPassword] = useState('');
|
||||||
const [smtpServer, setSmtpServer] = useState('');
|
const [smtpServer, setSmtpServer] = useState('');
|
||||||
|
const [imapServer, setImapServer] = useState('');
|
||||||
const [smtpPort, setSmtpPort] = useState('');
|
const [smtpPort, setSmtpPort] = useState('');
|
||||||
const [smtpUser, setSmtpUser] = useState('');
|
const [imapPort, setImapPort] = useState('');
|
||||||
const [smtpPassword, setSmtpPassword] = useState('');
|
const [mailUser, setMailUser] = useState('');
|
||||||
|
const [mailPassword, setMailPassword] = useState('');
|
||||||
const [useTls, setUseTls] = useState(true);
|
const [useTls, setUseTls] = useState(true);
|
||||||
const [useSsl, setUseSsl] = useState(false);
|
const [useSsl, setUseSsl] = useState(false);
|
||||||
const { selectedEstablishmentId } = useEstablishment();
|
const { user, selectedEstablishmentId } = useEstablishment();
|
||||||
const csrfToken = useCsrfToken(); // Récupération du csrfToken
|
const csrfToken = useCsrfToken(); // Récupération du csrfToken
|
||||||
const { showNotification } = useNotification();
|
const { showNotification } = useNotification();
|
||||||
const searchParams = useSearchParams();
|
const searchParams = useSearchParams();
|
||||||
@ -52,8 +54,10 @@ export default function SettingsPage() {
|
|||||||
.then((data) => {
|
.then((data) => {
|
||||||
setSmtpServer(data.smtp_server || '');
|
setSmtpServer(data.smtp_server || '');
|
||||||
setSmtpPort(data.smtp_port || '');
|
setSmtpPort(data.smtp_port || '');
|
||||||
setSmtpUser(data.smtp_user || '');
|
setImapServer(data.imap_server || '');
|
||||||
setSmtpPassword(data.smtp_password || '');
|
setImapPort(data.imap_port || '');
|
||||||
|
setMailUser(data.mail_user || '');
|
||||||
|
setMailPassword(data.mail_password || '');
|
||||||
setUseTls(data.use_tls || false);
|
setUseTls(data.use_tls || false);
|
||||||
setUseSsl(data.use_ssl || false);
|
setUseSsl(data.use_ssl || false);
|
||||||
})
|
})
|
||||||
@ -95,16 +99,24 @@ export default function SettingsPage() {
|
|||||||
setSmtpServer(e.target.value);
|
setSmtpServer(e.target.value);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const handleImapServerChange = (e) => {
|
||||||
|
setImapServer(e.target.value);
|
||||||
|
};
|
||||||
|
|
||||||
const handleSmtpPortChange = (e) => {
|
const handleSmtpPortChange = (e) => {
|
||||||
setSmtpPort(e.target.value);
|
setSmtpPort(e.target.value);
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleSmtpUserChange = (e) => {
|
const handleImapPortChange = (e) => {
|
||||||
setSmtpUser(e.target.value);
|
setImapPort(e.target.value);
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleSmtpPasswordChange = (e) => {
|
const handleMailUserChange = (e) => {
|
||||||
setSmtpPassword(e.target.value);
|
setMailUser(e.target.value);
|
||||||
|
};
|
||||||
|
|
||||||
|
const handleMailPasswordChange = (e) => {
|
||||||
|
setMailPassword(e.target.value);
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleUseTlsChange = (e) => {
|
const handleUseTlsChange = (e) => {
|
||||||
@ -131,10 +143,13 @@ export default function SettingsPage() {
|
|||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
const smtpData = {
|
const smtpData = {
|
||||||
establishment: selectedEstablishmentId,
|
establishment: selectedEstablishmentId,
|
||||||
|
profile_id: user.user_id,
|
||||||
smtp_server: smtpServer,
|
smtp_server: smtpServer,
|
||||||
smtp_port: smtpPort,
|
smtp_port: smtpPort,
|
||||||
smtp_user: smtpUser,
|
imap_server: imapServer,
|
||||||
smtp_password: smtpPassword,
|
imap_port: imapPort,
|
||||||
|
mail_user: mailUser,
|
||||||
|
mail_password: mailPassword,
|
||||||
use_tls: useTls,
|
use_tls: useTls,
|
||||||
use_ssl: useSsl,
|
use_ssl: useSsl,
|
||||||
};
|
};
|
||||||
@ -212,15 +227,25 @@ export default function SettingsPage() {
|
|||||||
onChange={handleSmtpPortChange}
|
onChange={handleSmtpPortChange}
|
||||||
/>
|
/>
|
||||||
<InputText
|
<InputText
|
||||||
label="Utilisateur SMTP"
|
label="Serveur IMAP"
|
||||||
value={smtpUser}
|
value={imapServer}
|
||||||
onChange={handleSmtpUserChange}
|
onChange={handleImapServerChange}
|
||||||
/>
|
/>
|
||||||
<InputText
|
<InputText
|
||||||
label="Mot de passe SMTP"
|
label="Port IMAP"
|
||||||
|
value={imapPort}
|
||||||
|
onChange={handleImapPortChange}
|
||||||
|
/>
|
||||||
|
<InputText
|
||||||
|
label="Adresse mail"
|
||||||
|
value={mailUser}
|
||||||
|
onChange={handleMailUserChange}
|
||||||
|
/>
|
||||||
|
<InputText
|
||||||
|
label="Mot de passe"
|
||||||
type="password"
|
type="password"
|
||||||
value={smtpPassword}
|
value={mailPassword}
|
||||||
onChange={handleSmtpPasswordChange}
|
onChange={handleMailPasswordChange}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div className="mt-6 border-t pt-4">
|
<div className="mt-6 border-t pt-4">
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import { BE_SETTINGS_SMTP_URL } from '@/utils/Url';
|
import { BE_SETTINGS_MAIL_URL } from '@/utils/Url';
|
||||||
import { errorHandler, requestResponseHandler } from './actionsHandlers';
|
import { errorHandler, requestResponseHandler } from './actionsHandlers';
|
||||||
|
|
||||||
export const PENDING = 'pending';
|
export const PENDING = 'pending';
|
||||||
@ -6,7 +6,7 @@ export const SUBSCRIBED = 'subscribed';
|
|||||||
export const ARCHIVED = 'archived';
|
export const ARCHIVED = 'archived';
|
||||||
|
|
||||||
export const fetchSmtpSettings = (csrfToken, establishment_id = null) => {
|
export const fetchSmtpSettings = (csrfToken, establishment_id = null) => {
|
||||||
let url = `${BE_SETTINGS_SMTP_URL}/`;
|
let url = `${BE_SETTINGS_MAIL_URL}/`;
|
||||||
if (establishment_id) {
|
if (establishment_id) {
|
||||||
url += `?establishment_id=${establishment_id}`;
|
url += `?establishment_id=${establishment_id}`;
|
||||||
}
|
}
|
||||||
@ -21,7 +21,7 @@ export const fetchSmtpSettings = (csrfToken, establishment_id = null) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export const editSmtpSettings = (data, csrfToken) => {
|
export const editSmtpSettings = (data, csrfToken) => {
|
||||||
return fetch(`${BE_SETTINGS_SMTP_URL}/`, {
|
return fetch(`${BE_SETTINGS_MAIL_URL}/`, {
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
headers: {
|
headers: {
|
||||||
'Content-Type': 'application/json',
|
'Content-Type': 'application/json',
|
||||||
|
|||||||
@ -30,7 +30,7 @@ export default function EmailSender({ csrfToken }) {
|
|||||||
// Vérifier si les paramètres SMTP sont configurés
|
// Vérifier si les paramètres SMTP sont configurés
|
||||||
fetchSmtpSettings(csrfToken, selectedEstablishmentId)
|
fetchSmtpSettings(csrfToken, selectedEstablishmentId)
|
||||||
.then((data) => {
|
.then((data) => {
|
||||||
if (data.smtp_server && data.smtp_port && data.smtp_user) {
|
if (data.smtp_server && data.smtp_port && data.mail_user) {
|
||||||
setFromEmail(data.smtp_user);
|
setFromEmail(data.smtp_user);
|
||||||
setSmtpConfigured(true);
|
setSmtpConfigured(true);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@ -62,7 +62,7 @@ export const BE_GESTIONMESSAGERIE_SEND_MESSAGE_URL = `${BASE_URL}/GestionMessage
|
|||||||
export const BE_GESTIONMESSAGERIE_SEARCH_RECIPIENTS_URL = `${BASE_URL}/GestionMessagerie/search-recipients`;
|
export const BE_GESTIONMESSAGERIE_SEARCH_RECIPIENTS_URL = `${BASE_URL}/GestionMessagerie/search-recipients`;
|
||||||
|
|
||||||
// SETTINGS
|
// SETTINGS
|
||||||
export const BE_SETTINGS_SMTP_URL = `${BASE_URL}/Settings/smtp-settings`;
|
export const BE_SETTINGS_MAIL_URL = `${BASE_URL}/Settings/mail-settings`;
|
||||||
|
|
||||||
// URL FRONT-END
|
// URL FRONT-END
|
||||||
export const FE_HOME_URL = '/';
|
export const FE_HOME_URL = '/';
|
||||||
|
|||||||
Reference in New Issue
Block a user