protected void bSalva_Click(object sender, EventArgs e) { Session.Timeout = 70; Int32 idu = Session["iduser"] != null?Int32.Parse(Session["iduser"].ToString()) : -1; if (idu < 0) { Stato("ATTENZIONE: sessione scaduta. Ricollegarsi.", Color.Red); return; } utenti.cercaid(idu); // nonso perchè mi cerco ??? Int32 userid = -1; Int32.TryParse(dgvComm.SelectedValue != null ? dgvComm.SelectedValue.ToString() : "", out userid); // mi prendo l'id dell'utente da abilitare dettutente.cercaid(userid); dettutente.abilitato = cbAbilitato.Checked; dettutente.potere = int.Parse(ddlPotere.SelectedValue); dettutente.limite = cldLimite.SelectedDate; if (userid >= 0) { if (!dettutente.registradatiutente("registrazioni", utenti.iduser)) { Stato("Modifica richiesta non andata a buon fine. Prego contattare servizio assistenza al n. " + Session["assistenza"].ToString(), Color.Red); return; } // ok inoltro la richiesta if (riabilitato == false && dettutente.abilitato == true) { gmail gm = new gmail(); gm.subject = "Abilitazione form richieste servizi Agenzia per gli Appalti e Contratti."; gm.body = "Buongiorno gentile " + dettutente.nome + " " + dettutente.cognome + "\n\n"; gm.body += " di seguito le credenziali per l'accesso all'applicazione riservata alla gestione delle richieste di servizi, rivolte all'APAC.\n\n"; gm.body += "Username\t" + dettutente.nikname + "\n"; gm.body += "Password\t" + dettutente.password + "\n\n\n"; gm.body += "Cordiali saluti.\n"; string[] achi = { dettutente.mail }; gm.achi = achi; string[] achiccn = { "*****@*****.**", "*****@*****.**" }; gm.achiccn = achiccn; // PER ORA NON INVIO A NESSUN ALTRO gm.dachi = "*****@*****.**"; gm.mandamail("", 0, "", "", out msg); if (msg.Trim() != "") { sStato.Text = "ATTENZIONE: credenziali utente non inviate correttamente. Contatare il servizio assistenza al n. " + Session["assistenza"].ToString(); } else { sStato.Text = "Utente abilitato e inviata mail con nuove credenziali!"; } } else { sStato.Text = "Modifica effettuata."; } } else // devo aggiungere la nuova gara { Stato("Inserimento nuova richiesta non andata a buon fine. Prego contattare servizio assistenza al n. " + Session["assistenza"].ToString(), Color.Red); return; } }
protected void cbRegistrati_Click(object sender, EventArgs e) { id = Session["iduser"] != null?Int32.Parse(Session["iduser"].ToString()) : -1; if (id >= 0) { utente.cercaid(id); // mi assicuro di leggere abilitato e pwd (quei dati che non chiedo a video) } // avvia i controlli string er = ""; if (tNikname.Text.Length < 7 || tNikname.Text.Trim().Length > 24) { er += "Username con almeno 8 caratteri (max 24); "; } if (tNome.Text.Length < 2) { er += "Nome con almeno 3 caratteri; "; } if (tCognome.Text.Length < 2) { er += "Cognome con almeno 3 caratteri; "; } if (tMail1.Text.Length < 6 || (tMail1.Text.IndexOf("@") < 1) || (tMail1.Text.IndexOf(".") < 1)) { er += "E-Mail con almeno 7 caratteri e con il simbolo @ e il simbolo . ; "; } if (tMail1.Text != tMail2.Text) { er += "E-Mail e Conferma E-Mail; "; } //if (tMatricola.Text.Length < 4) er += "Matricola; "; if (cbNonPresente.Checked) // ente non presente -> può essere che ddlselezionato ma nonpresente = vero!!!!! { if (tEnte.Text.Trim().Length < 3) { er += "Ente con almeno 3; "; } } else if (ddlEnte.SelectedItem.Text.Trim().Length < 2) { er += "Ente non selezionato; "; } if (tIndirizzo.Text.Length < 5) { er += "Indirizzo con almeno 6 caratteri; "; } if (tCivico.Text.Trim().Length < 1) { er += "Civico; "; } if (tCap.Text.Trim().Length < 5) { er += "Cap con almeno 6 caratteri; "; } if (tCitta.Text.Trim().Length < 2) { er += "Città con almeno 3 caratteri; "; } if (tTelefono.Text.Trim().Length < 8) { er += "Telefono con almeno 9 caratteri; "; } if (tTelefono.Text.IndexOf(" ") > 0) { er += "Telefono: solo numeri senza spazi; "; } if (!cbConsenso.Checked) { er += "Consenso al trattamento: è necessario; "; } if (cbNonPresente.Checked && tEnte.Text.Trim().Length < 3) { er += "Ente: con almeno 3 caratteri; "; } if (!cbNonPresente.Checked && ddlEnte.SelectedItem.Text.Trim().Length < 2) { er += "Ente: con almeno 2 caratteri; "; } if (er != "") { er = "I valori dei campi indicati sono errati o mancanti: " + er; tStato.Text = er; return; } utente.nikname = tNikname.Text.Trim(); utente.nome = tNome.Text.Trim(); utente.cognome = tCognome.Text.Trim(); utente.mail = tMail1.Text.Trim(); //utente.matricola = tMatricola.Text.Trim(); utente.ente = cbNonPresente.Checked ? tEnte.Text.Trim() : ddlEnte.SelectedItem.Text.Trim(); utente.ente_ek = ""; utente.tipoente_ek = ""; Gare gara = new Gare(); tbl = gara.CercaEnte(null, utente.ente, out msg); if (tbl != null && tbl.Rows[0]["tipoente_ek"] != DBNull.Value) { utente.tipoente_ek = tbl.Rows[0]["tipoente_ek"].ToString().Trim(); } utente.indirizzo = tIndirizzo.Text.Trim(); utente.civico = tCivico.Text.Trim(); utente.cap = tCap.Text.Trim(); utente.città = tCitta.Text.Trim(); utente.telefono = tTelefono.Text.Trim(); utente.scadenza = DateTime.Now.AddMonths(12); // non ci sono errori di inserimento e posso registrare la richiesta o la modifica if (id > 0) // è una modifica { bool ok = utente.registradatiutente("Modifica anagrafica utente", (Int32)id); if (!ok) { tStato.Text = "Modifiche non apportate. Contattare il servizio assistenza al n. " + Session["assistenza"].ToString(); return; } Response.Redirect("menu.aspx?p=" + utente.iduser.ToString().Trim() + "&l=si"); } else { // devo controllare se l'utente c'è già, se no lo registro ed invio mail di richiesta registrazione ed abilitazione // poi ritorno alla pagina di default con loggato = no DataSet ds = new DataSet(); SQLClass.SQLc.Parameters.Clear(); SQLClass.SQLc.Parameters.Add("@nikname", SqlDbType.NVarChar); SQLClass.SQLc.Parameters["@nikname"].Value = System.Convert.ToString(utente.nikname); if (SQLClass.getSQLdata("select * from utenti where nikname=@nikname", "utenti", out msg) > 0) { tStato.Text = "Utente con username " + utente.nikname + " già presente. Accertarsi di non essere già stati registrati o cambiare Username!"; //ShowPopUpMsg("Utente con username " + utente.nikname + " già presente. Accertarsi di non essere già stati registrati o cambiare Username!"); return; } else { utente.password = utente.CalcolaPasswordCasuale(8, 3, 3, 3); utente.abilitato = false; utente.forzocambiopassword = true; utente.giornalizza = false; //utente.ente = (utente.ente); if (utente.aggiungiutente()) { // ok registrazione effettuata. ora manda mail agli amministratori // devo rileggere il record aggiunto per avere l'id if (!utente.cercanikname(utente.nikname, utente.password)) { tStato.Text = "Richiesta di registrazione non andata a buon fine. Prego contattare l'assistenza al n. " + (string)Session["assistenza"]; return; //ShowPopUpMsg("Richiesta di registrazione non andata a buon fine. Prego contattare l'assistenza al n. " + (string)Session["assistenza"]); } Session.Add("Utente", utente.nikname); Session.Add("iduser", utente.iduser); // inoltro mail a tutti gli amministratori msg = ""; ds.Clear(); tbl = SQLClass.getfromDSet("select id, nikname, nome, cognome, mail, power from utenti where (power >= 50)", "Admin", out msg); if (msg.Trim() != "") { tStato.Text = "Attenzione: problema di connessione. Prego contattare il n. " + (string)Session["assistenza"]; return; } int k = 0, n = tbl.HasErrors ? 0 : tbl.Rows.Count; string[] achisccn = new string[n]; string[] achi = new string[1]; achi[0] = utente.mail; for (int i = 0; i < n; i++) { if (tbl.Rows[i]["Mail"] != DBNull.Value) { achisccn[k++] = tbl.Rows[i]["Mail"].ToString(); } } if (k == 0) { tStato.Text = "Attenzione: non ci sono amministratori che posso confermare la tua richiesta. Prego contattare il n. " + (string)Session["assistenza"]; //ShowPopUpMsg("Attenzione: non ci sono amministratori che posso confermare la tua richiesta. Prego contattare il n. " + (string)Session["assistenza"]); } else { gmail gm = null; gm = new gmail(); gm.dachivisualizzato = "Agenzia prov. pre gli Appalti e Contratti"; gm.achi = achi; gm.achiccn = achisccn; gm.numeritel = "0461-496456"; gm.subject = "Raccolta fabbisogno: richiesta registrazione nuovo utente"; gm.body = "Buongiorno,\n"; gm.body += "\tla informaiamo che la sua domanda di registrazione all'applicazione web\n"; gm.body += "per la presentazione delle richieste di gara per le quali s'intende avvalersi\n"; gm.body += "dei servizi offerti da APAC è stata inoltrata correttamente.\n"; gm.body += "\n\nI dati inseriti sono:\n"; gm.body += "Username: \t" + utente.nikname + "\n"; gm.body += "Nome: \t" + utente.nome + "\n"; gm.body += "Cognome: \t" + utente.cognome + "\n"; gm.body += "Mail: \t" + utente.mail + "\n"; gm.body += "Tel.: \t" + utente.telefono + "\n\n\n"; gm.body += "Dopo l'approvazione, riceverà automaticamente la mail con le credenziali per il primo accesso.\n\n"; gm.body += "Cordiali saluti.\n"; if (!gm.mandamail("", 0, "", "", out msg)) { tStato.Text = "Richiesta di registrazione non eseguita! MAIL DI CONFERMA NON INOLTRATA!. CONTATTARE IL NUMERO " + (string)Session["assistenza"] + " Err: " + msg; //ShowPopUpMsg("Richiesta di registrazione effettuata con successo, MAIL DI CONFERMA NON INOLTRATA!. CONTATTARE IL NUMERO " + (string)Session["assistenza"] + " Err: " + msg); } else { tStato.Text = "Richiesta di registrazione effettuata con successo. Riceverà via email le credenziali per l'accesso."; cbRegistrati.Enabled = false; //ShowPopUpMsg("Richiesta di registrazione effettuata con successo. Riceverà, entro 24 ore via email, le credenziali per l'accesso."); } } } else { tStato.Text = "Richiesta di registrazione non andata a buon fine. Prego contattare l'assistenza al n. " + (string)Session["assistenza"]; } } } }