Back to top

Autore Topic: Login diversi gruppi di utenti  (Letto 9386 volte)

Offline fabiuzz1983

  • Esploratore
  • **
  • Post: 188
  • Sesso: Maschio
    • Mostra profilo
Login diversi gruppi di utenti
« il: 20 Set 2013, 01:20:42 »
Salve a tutti,


ho una necessità:


ho creato diverse tipologie di gruppi di utenti e relativi livelli di accesso ma ora ho bisogno che possano registrarsi scegliendo il gruppo al quale appartengono, e che, a seconda del gruppo, vengano re-direzionati a diverse aree del sito che non sono visibili ad altri gruppi...è possibile?


Se si come?




grazie a tutti
Creatore e Ideatore di Aghape Ambiente

Offline fabiuzz1983

  • Esploratore
  • **
  • Post: 188
  • Sesso: Maschio
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #1 il: 20 Set 2013, 02:05:37 »
Ho risolto solo parzialmente per ora con un componente gratuito che effettua il redirect in base o all'ACL o allo Usergroup, rimane solo il punto di far registrare l'utente in modo che vada a finire in un gruppo...lumi?
Creatore e Ideatore di Aghape Ambiente

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32042
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #2 il: 20 Set 2013, 07:37:35 »
Leggo spesso di richieste simile alla tua e se questa funzione non è prevista ci sarà una ragione, cercherò di spiegarti perché, a parer mio sarebbe una cosa illogica o inutile oltre che insicura ai fini della privacy. Non è che la suddivisione e scelta del gruppo non si possa fare nel login, infatti nei componenti newsletter è quasi sempre presente. Il motivo di suddividere gli utenti nasce sempre dal fatto di suddividerli per aree come per esempio clienti grossisti o clienti dettaglio e come hai sottolineato ognuno deve poter visualizzare l'area di appartenenza ed anche avere alcuni requisiti per poter far parte dell'una o dell'altra. Quindi non dovrebbe essere permesso, più che la scelta, proprio la registrazione automatica senza approvazione di un administrator che controlli i requisiti ed approva la registrazione e di conseguenza assegni anche il gruppo. A questo punto sei a posto perché avrai aggiunto naturalmente nel form login i campi supplementari e il campo scelta gruppo. Un assegnamento automatico permetterebbe a chiunque di iscriversi ad entrambi facendo venire meno il motivo della suddivisione iniziale. Spero di averti convinto.

Offline fabiuzz1983

  • Esploratore
  • **
  • Post: 188
  • Sesso: Maschio
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #3 il: 20 Set 2013, 23:47:32 »
no certo tomtom, hai ragione, a questo punto ti chiedo come includere un checkbox aggiungendo manualmente i gruppi creati da back-end in modo da sapere almeno a quale categoria l'utente desidera aggregarsi. dopodichè lo aggiungo manualmente e nel processo di registrazione gli dico che un amministratore approverà la sua richiesta. attendo lumi su come operare per aggiungere 3 checkbox in + con i gruppi che possano arrivarmi via mail in modo da vedere x quale gruppo viene fatta richiesta
Creatore e Ideatore di Aghape Ambiente

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32042
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #4 il: 21 Set 2013, 08:19:33 »
Col login standard è possibile assegnare solo un checkbox, puoi utilizzare cb community che ti permette sia di scegliere che di associare ad una newsletter. In alternativa se non trovi altro devi autocostruirtelo con chronoforms.

Offline fabiuzz1983

  • Esploratore
  • **
  • Post: 188
  • Sesso: Maschio
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #5 il: 23 Set 2013, 17:48:59 »
basicamente quello che vorrei fare è mostrare all'utente i gruppi che definisco in back-end e mostrarlo nel form di registrazione (sia via modulo, che non è quello predefinito di joomla ma è bt login) che via task register di joomla. quindi non mi serve creare tutto il form di registrazione ma pescare i gruppi via select e mostrarli anche via dropdown. come lo posso fare praticamente via codice da inserire? grazie
Creatore e Ideatore di Aghape Ambiente

Offline giusebos

  • Fuori controllo
  • *
  • Post: 21737
  • Sesso: Maschio
  • Giuseppe Serbelloni Mazzanti Viendalmare
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #6 il: 23 Set 2013, 20:06:13 »
potresti usare il plugin user_profile e con una piccola modifica al file

/plugins/user/profile/profiles/profile.xml


ma forse converrebbe duplicare il plug-in per evitare sovrascritture
su www.icagenda.it guide e tutorial con esempi di chronoforms e chronoconnectivity

Offline giusebos

  • Fuori controllo
  • *
  • Post: 21737
  • Sesso: Maschio
  • Giuseppe Serbelloni Mazzanti Viendalmare
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #7 il: 23 Set 2013, 20:12:47 »
Quindi, creiamo una cartella sul nostro desktop e chiamiamola profile_v2
Accediamo con il nostro FTP alle cartelle di Joomla sul nostro server, e andiamo in plugins/user/profile, copiamo tutti i file in locale nella cartella profile_v2 appena creata.

Poi copiamo da administrator/language/it-IT i seguenti file:

    it-IT.plg_user_profile.ini
    it-IT.plg_user_profile.sys.ini

    Rinominiamo i file di lingua in it-IT.plg_user_profile_v2.ini e it-IT.plg_user_profile_v2.sys.ini
   
Il prossimo passo sarà quello di rinominare tutte le occorrenze di profile con profile_v2 nei file profile.xml e profile.php


Codice: [Seleziona]
   
    profile.xml
    Rinominiamo profile.xml in profile_v2.xml
    LINEA 3: <name>plg_user_profile_v2</name>
    LINEA 14: <filename plugin=”profile_v2″>profile_v2.php</filename>
    LINEA 19: <language tag=”it-IT”>it-IT.plg_user_profile_v2.ini</language>
    LINEA 20: <language tag=”it-IT”>it-IT.plg_user_profile_v2.sys.ini</language>
    profile.php
    Rinominiamo profile.php in profile_v2.php
    LINEA 18: class plgUserProfile_v2 extends JPlugin
su www.icagenda.it guide e tutorial con esempi di chronoforms e chronoconnectivity

Offline giusebos

  • Fuori controllo
  • *
  • Post: 21737
  • Sesso: Maschio
  • Giuseppe Serbelloni Mazzanti Viendalmare
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #8 il: 23 Set 2013, 20:21:28 »
Adesso creiamo un archivio ZIP di tutta la cartella profile_v2 e installiamo il nostro nuovo plugin profile_v2.zip da Gestione Estensioni come un normale plugin, dopodiché se è abilitato, disabilitiamo il plugin User Profile standard ed abilitiamo il nostro User Profile_v2 appena installato.

Inseriamo il nuovo campo
Aggiungiamo un nuovo campo select, ad esempio il campo “gruppo” per inserire i nostri gruppi. Per prima cosa editiamo il file:

Codice: [Seleziona]
/plugins/user/profile_v2/profiles/profile.xml
All’interno del file XML, come possiamo notare, troviamo dichiarati tutti i campi attualmente disponibili per un’utente, ogni campo è identificabile dal tag <field …. />.
Nel punto dove più ci piace, ad esempio nel nostro caso sotto al field phone, inseriamo il nuovo campo gruppo, andando a scrivere questo pezzo di codice:
Codice: [Seleziona]
<field
name=”gruppo“
description=”gruppo di iscrizione“
filter=”string”
label=”gruppo“
message=”PLG_USER_PROFILE_FIELD_WEB_SITE_MESSAGE”
size=”30″
>
<option value=”gruppo1”>gruppo 1</option>
<option value=”gruppo2”>gruppo 2</option>
<option value=”gruppo3”>gruppo 3</option>
<option value=”gruppo4”>gruppo 4</option>
<option value=”gruppoN”>gruppo N</option>
</field>

In <option> inseriamo le varie opzioni, che possono essere più di 2, nell’esempio sopra abbiamo inserito un campo per identificare il gruppo che l'utente sceglierà.

« Ultima modifica: 23 Set 2013, 20:35:09 da giusebos »
su www.icagenda.it guide e tutorial con esempi di chronoforms e chronoconnectivity

Offline giusebos

  • Fuori controllo
  • *
  • Post: 21737
  • Sesso: Maschio
  • Giuseppe Serbelloni Mazzanti Viendalmare
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #9 il: 23 Set 2013, 20:24:08 »
configuriamo il file
Ora rendiamo il nostro campo “configurabile” da back-end, ovvero come succede per gli altri user profile fields, inseriamo il codice necessario a configurare il campo come Opzionale, Obbligatorio o Disabilitato.

Editiamo il file:

Codice: [Seleziona]
plugins/user/profile_v2/profile_v2.phpintorno alla riga 71 aggiungendo il campo “gruppo” nell’arrey in questo modo:


Codice: [Seleziona]
$fields = array(
‘address1′,
‘address2′,
‘city’,
‘region’,
‘country’,
‘postal_code’,
‘phone’,
‘gruppo’,
‘website’,
‘favoritebook’,
‘aboutme’,
‘tos’,
‘dob’,
);
su www.icagenda.it guide e tutorial con esempi di chronoforms e chronoconnectivity

Offline giusebos

  • Fuori controllo
  • *
  • Post: 21737
  • Sesso: Maschio
  • Giuseppe Serbelloni Mazzanti Viendalmare
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #10 il: 23 Set 2013, 20:33:21 »
Ora editiamo il file:

Codice: [Seleziona]
plugins/user/profile_v2/profile_v2.xmlin 2 punti:
Per il form di registrazione e amministratore
Per il form di modifica da parte dell’utente
Per il primo punto scriviamo intorno alla riga 100 questo codice:

Codice: [Seleziona]
<field “name”=register-require_gruppo” type=”list”
description=”gruppo”
label=”gruppo”
>
<option value=”2″>JOPTION_REQUIRED</option>
<option value=”1″>JOPTION_OPTIONAL</option>
<option value=”0″>JDISABLED</option>
</field>

Per il secondo punto nello stesso file intorno alla riga 320,
o comunque nel punto dove più si addice in base al tipo di campo, è indifferente:

Codice: [Seleziona]
<field “name”=profile-require_gruppo” type=”list”
description=”gruppo di appartenenza”
label=”gruppo”
>
<option value=”2″>JOPTION_REQUIRED</option>
<option value=”1″>JOPTION_OPTIONAL</option>
<option value=”0″>JDISABLED</option>
</field>

se volete inserire ulteriori campi si procede allo stesso modo decidendo se inserire dei sempli campi di testo come il dodice che riporto più sotto, dei radio button o altro.

Codice: [Seleziona]
<field
name=”mio_campo_personalizzato“
description=”mio_campo_personalizzato“
filter=”string”
label=”mio_campo_personalizzato“
message=”PLG_USER_PROFILE_FIELD_WEB_SITE_MESSAGE”
size=”30″
/>

é possibile rendere il plug in in multilingua semplicemente trasformando in stringhe alcune frasi ed inserendo le stringhe nei rispettivi file
 
it-IT.plg_user_profile_v2.ini
en-GB.plg_user_profile_v2.ini
fr-FR.plg_user_profile_v2.ini

P.S.
Non me ne vogliano i moderatori se praticamente ho scritto un tutorial, ma forse, se splittiamo e gli diamo un titolo tipo "Campi personalizzati per iscrizione al sito" potrebbe risultare utili per quei 4 che le ricerche le fanno ancora  ;)

« Ultima modifica: 23 Set 2013, 20:40:43 da giusebos »
su www.icagenda.it guide e tutorial con esempi di chronoforms e chronoconnectivity

Offline fabiuzz1983

  • Esploratore
  • **
  • Post: 188
  • Sesso: Maschio
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #11 il: 23 Set 2013, 23:27:23 »
perchè btlogin non legge i campi del user profile plugin di joomla?! legge solo la parte relativa allo user e psw etc. ma non i campi addizionali che vengono abilitati da user profile...
Creatore e Ideatore di Aghape Ambiente

Offline giusebos

  • Fuori controllo
  • *
  • Post: 21737
  • Sesso: Maschio
  • Giuseppe Serbelloni Mazzanti Viendalmare
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #12 il: 23 Set 2013, 23:40:02 »
non saprei non sono mica un paragnosta, dovrei quantomeno provare sto btlogin, ma ti dico che non lo farò , almeno per adesso.
Prova a dargli tu un occhiata oppure elimina btlogin e vedi di far veir fuori in lightbox il modulo standard di joomla ;)

questo comunque è un altro problema!!
Lo sa i che qui una domanda vale un post?
Tipo il M5S che uno vale uno ;)
su www.icagenda.it guide e tutorial con esempi di chronoforms e chronoconnectivity

Offline fabiuzz1983

  • Esploratore
  • **
  • Post: 188
  • Sesso: Maschio
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #13 il: 24 Set 2013, 06:02:00 »
oghei grazie lo stesso, inserirò due pulsanti e li linkerò al login e al task register in lightbox.
Creatore e Ideatore di Aghape Ambiente

Offline fabiuzz1983

  • Esploratore
  • **
  • Post: 188
  • Sesso: Maschio
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #14 il: 26 Set 2013, 00:23:44 »
un'ulteriore domanda: nel qual caso voglia che la mail di notifica che arriva all'amministratore contenga queste informazioni:

nome:
telefono:
gruppo:

etc. etc.

come la modifico includendo le modifiche al gruppo di cui sopra?
Creatore e Ideatore di Aghape Ambiente

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32042
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #15 il: 26 Set 2013, 00:29:36 »
Una domanda un topic, come ti ha detto giovi apri un nuovo topic.

Offline fabiuzz1983

  • Esploratore
  • **
  • Post: 188
  • Sesso: Maschio
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #16 il: 26 Set 2013, 00:46:11 »
ok volevo evitare di crearne 10000 diversi! sorry quindi ne apro uno nuovo. grazie
Creatore e Ideatore di Aghape Ambiente

Offline fabiuzz1983

  • Esploratore
  • **
  • Post: 188
  • Sesso: Maschio
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #17 il: 26 Set 2013, 00:50:15 »
ok però sempre riferito a questo post posso fare altre domande? o devo sempre creare un nuovo post anche se la domanda è relativa all'argomento esposto sopra?
Creatore e Ideatore di Aghape Ambiente

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32042
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #18 il: 26 Set 2013, 07:45:03 »
Per cortesia non chiedere cose ovvie. È chiaro che puoi chiedere ancora circa la stessa problematica nello stesso topic.

Offline fabiuzz1983

  • Esploratore
  • **
  • Post: 188
  • Sesso: Maschio
    • Mostra profilo
Re:Login diversi gruppi di utenti
« Risposta #19 il: 22 Ott 2013, 20:26:05 »
risolto utilizzando chronoform con un if-else. grazie comunque e sempre solita cortesia
Creatore e Ideatore di Aghape Ambiente

 



Web Design Bolzano Kreatif