Joomla.it Forum
Componenti per Joomla! => Gestione Form => : danielemucilli 18 Dec 2012, 11:23:10
-
Buongiorno io avrei bisogno di questa funzione, il sito che sto creando avrà un form/prenota che sarà utilizzato da chiunque si collega sul sito. Il sito però sarà presente anche nei punti vendita del cliente. Per questo il cliente vorrebbe che coloro che fanno l'ordine nel punto vendita posso essere riconoscibili. L'idea più carina è che il punto vendita fa il login e alla voce di menu "prenota" viene sostituita dalla voce di menu "prenota-da-questo-punto-vendita".
E' possibile fare una cosa del genere?
Potete aiutarmi?
Grazie
-
La cosa è fattibile sicuramente, il come dipende dal componente usato per creare il form e questo non ce l'hai detto.
-
Scusa è vero non l'ho inserito, perdonatemi, allora il form che ho utilizzato è fox contact, comunque sono disposto da utilizzare al form pur di raggiungere il mio scopo.
Mi sorge un altra domanda, per raggiungere questo obiettivo, si potrebbe inserire in automatico nel form l'email del punto vendita che si è loggato? il campo deve essere pre-impostato, solo quando un utente si logga. In caso contrario, sarà libero, quindi l'utente pubblico, potrà inserire la propria email a piacimento.
Grazie
Daniele
-
Mi dispiace di non poterti aiutare con quel componente perchè non lo conosco.
Chronoforms salva di default nei dati del form il codice dell'utente loggato e quindi tutto li discenderebbe in modo lineare senza difficoltà con o senza email di chi compila il form.
-
Grazie mille della celere risposta,ora prova ad installare chronoform e vediamo se riuscirò nel compito. Grazie dell'aiuto. Se risolvo, lo comunico subito.
Ciaoo
-
Allora ho realizzato il form seguendo la guida di joomla.it però quello che mi hai detto non avviene, dovrei abilitare qualcosa?
Grazie
-
Cosa non avviene ?
-
Che quando mi loggo, vengo in automatico caricati i dati dell'utente, come ad esempio l'email.
-
Quale versione di chronoform stai usando?
-
L'ultima versione per joomla 2.5! Grazie dell'aiuto
-
Qui trovi la soluzione.
http://forum.joomla.it/index.php/topic,146238.msg652164.html#msg652164
in sostanza crei una action custom code in on load nella quale recuperi il valore dell'email dell'utente e crei un campo nascosto nel form che contiene il valore dell'email
<?php
$user =& JFactory::getUser();
?>
<input type="hidden" name="user_email" value="<?php echo $user->email ; ?>" />
poi nell'email usi user_mail come consueto nel campo dynamic to o nel template email con {user_mail}
Questa è una versione molto semplificata che non ho collaudato ma dovrebbe funzionare.
-
Ciao il form funziona, ma non mi invia l'user_mail come mai?? Mentre mi fa visualizzare in alto al form tutte le info sul utente loggato.
Questo è il codice del form
<div class="ccms_form_element cfdiv_header" id="1_container_div" style=""><p>Compila questo modulo per ordinare o richiedere un preventivo. Sarai ricontattato prima possibile.<br />Ti preghiamo di compilare tutti i campi obbligatori.</p><div class="clear"><><><div class="ccms_form_element cfdiv_text" id="nome_cognome1_container_div" style=""><label>Nome e Cognome</label><input maxlength="150" size="30" class=" validate['required','alphanum']" title="" type="text" value="" name="nome_cognome" />
<div class="small-message">Inserisci il tuo nome e cognome<><div class="clear"><><div id="error-message-nome_cognome"><><><div class="ccms_form_element cfdiv_text" id="indirizzo_consegna1_container_div" style=""><label>Indirizzo di consegna</label><input maxlength="150" size="30" class=" validate['required','alphanum']" title="" type="text" value="" name="indirizzo_consegna" />
<div class="small-message">Inserisci l'indirizzo di consegna<><div class="clear"><><div id="error-message-indirizzo_consegna"><><><div class="ccms_form_element cfdiv_text" id="numero_telefono1_container_div" style=""><label>Numero di telefono</label><input maxlength="150" size="30" class=" validate['required','phone']" title="" type="text" value="" name="numero_telefono" />
<div class="small-message">Inserisci il tuo telefono prinicipale<><div class="clear"><><div id="error-message-numero_telefono"><><><div class="ccms_form_element cfdiv_text" id="numero_telefono_21_container_div" style=""><label>Numero di telefono 2</label><input maxlength="150" size="30" class=" validate['phone']" title="" type="text" value="" name="numero_telefono_2" />
<div class="small-message">Inserisci il tuo telefono secondario<><div class="clear"><><div id="error-message-numero_telefono_2"><><><div class="ccms_form_element cfdiv_text" id="email1_container_div" style=""><label>Email</label><input maxlength="150" size="30" class=" validate['required','email']" title="" type="text" value="" name="email" />
<div class="small-message">Inserisci la tua email<><div class="clear"><><div id="error-message-email"><><><input type="hidden" value="<?php echo $user->email ; ?>" name="email_punto_vendita" />
<div class="ccms_form_element cfdiv_checkboxgroup" id="ordine_tipo1_container_div" style=""><label>Ordine Tipo</label><select multiple="multiple" size="1" class=" validate['required']" title="" name="ordine_tipo[]">
<option value="">Per favore scegli il tipo</option>
<option value="Testo1">Testo1</option>
<option value="Testo2">Testo2</option>
<option value="Testo3">Testo3</option>
<option value="Testo4">Testo4</option>
</select>
<div class="small-message">Scegli il tipo<><div class="clear"><><div id="error-message-ordine_tipo"><><><div class="ccms_form_element cfdiv_select" id="ordine_quantita1_container_div" style=""><label>Ordine Quantità</label><select size="1" class=" validate['required']" title="" name="ordine_quantita">
<option value="">Per favore scegli la quantità</option>
<option value="Testo1">Testo1</option>
<option value="Testo2">Testo2</option>
<option value="Testo3">Testo3</option>
<option value="Testo4">Testo4</option>
</select>
<div class="clear"><><div id="error-message-ordine_quantita"><><><div class="ccms_form_element cfdiv_checkbox" id="privacy1_container_div" style=""><input type="hidden" name="privacy" value="" alt="ghost" />
<input checked="checked" value="1" title="" type="checkbox" class="validate['required'] label_right" name="privacy" id="privacy" />
<label for="privacy" class="full_label">Acconsento al trattamento dei dati secondo la normativa sulla privacy</label><div class="clear"><><div id="error-message-privacy"><><><div class="ccms_form_element cfdiv_header" id="2_container_div" style="">L'invio di questo modulo, implica il consenso al trattamento dei dati secondo la normativa sulla privacy.<div class="clear"><><><div class="ccms_form_element cfdiv_submit" id="input_submit_121_container_div" style="text-align:left"><input name="input_submit_12" class="" value="Invia" type="submit" /> <input type='reset' name='reset' value='Cancella' /><div class="clear"><><div id="error-message-input_submit_12"><><>
-
Il form che hai mostrato invia "email_punto_vendita" non user_mail
-
Allora ho fatto questa modifica, ma ancora nulla. Ho aggiunto pure questa parte di codice in eventi On load.
Ma ora invece di apparirmi la scritta {user_email}, mi appare un campo vuoto.
<?php
$user =& JFactory::getUser();
if (!$user->guest) {
echo 'Sei loggato come:<br />';
echo 'Punto vendita: ' . $user->name . '<br />';
echo 'Mail : ' . $user->email . '<br />';
}
?>
<input type="hidden" name="user_email" value="<?php echo $user->email ; ?>" />
-
Dovrebbe funzionare non usando l'action Custom code ma l'elements Custom element che trovi in Advanced elements.
Va spuntata l'opzione Pure Code ed in Code inserisci il codice dell'ultimo post.
<?php
$user =& JFactory::getUser();
if (!$user->guest) {
echo 'Sei loggato come:<br />';
echo 'Punto vendita: ' . $user->name . '<br />';
echo 'Mail : ' . $user->email . '<br />';
}
?>
<input type="hidden" name="user_email" value="<?php echo $user->email ; ?>" />
-
Ce l'abbiamo quasi fatta, ora mi appare questo messaggio, quando mi arriva le info dal form, nel campo dedicato all user_email, c'è questa scritta "[size=78%]Questo indirizzo email è protetto dagli spambots. E' necessario abilitare JavaScript per vederlo.[/size]"
Dove posso abilitarlo?
Grazie ancora per aiuto che mi hai dato![size=78%] [/size]
-
Risolto, sono andato a disabilitare "Content - Email Cloaking" e ora mi viene visualizzato senza problemi!:D
Grazieee