protected void Page_Load(object sender, System.EventArgs e) { if (!Page.IsCallback) { Master.Botonera.ItemClick += new ToolBarEventHandler(this.Botonera_Click); Master.TituloPagina = "Detalle de conexión wifi"; Master.Comportamiento = 9; Master.bFuncionesLocales = true; Master.FuncionesJavaScript.Add("Javascript/convocados.js"); Master.FuncionesJavaScript.Add("Javascript/boxover.js"); Master.FuncionesJavaScript.Add("PopCalendar/PopCalendar.js"); Master.FicherosCSS.Add("PopCalendar/CSS/Classic.css"); Utilidades.SetEventosFecha(this.txtFechaIni); Utilidades.SetEventosFecha(this.txtFechaFin); this.txtSolicitante.Attributes.Add("readonly", "readonly"); this.txtUsuario.Attributes.Add("readonly", "readonly"); this.txtPwd.Attributes.Add("readonly", "readonly"); bNuevo = ""; strInicial = ""; sLectura = "false"; strMsg = ""; strLocation = ""; string sHoy = System.DateTime.Today.ToShortDateString(); //bool bCargando = false; //if (Request.QueryString["I"] != null) //{ // if (Request.QueryString["I"] == "1") // bCargando = true; //} if (!Page.IsPostBack)//|| bCargando { //bNuevo = Request.Form["ctl00$CPHC$hdnNuevo"]; if (Request.QueryString["hdnNuevo"] != null) { bNuevo = Utilidades.decodpar(Request.QueryString["hdnNuevo"].ToString());//Request.Form["ctl00$CPHC$hdnNuevo"]; } if (bNuevo == "True") { //Botonera.Items[2].Enabled = false; this.txtSolicitante.Text = Session["CR2I_APELLIDO1"].ToString() + " " + Session["CR2I_APELLIDO2"].ToString() + ", " + Session["CR2I_NOMBRE"].ToString(); this.txtCIP.Text = Session["CR2I_CIP"].ToString(); //this.txtInteresado.Text = Session["CR2I_APELLIDO1"].ToString() + " " + Session["CR2I_APELLIDO2"].ToString() + ", " + Session["CR2I_NOMBRE"].ToString(); this.txtFechaIni.Text = DateTime.Today.ToShortDateString(); this.txtFechaFin.Text = DateTime.Today.ToShortDateString(); if (DateTime.Now.Minute < 30) { this.cboHoraIni.SelectedValue = (DateTime.Now.Hour).ToString() + ":00"; } else { this.cboHoraIni.SelectedValue = (DateTime.Now.Hour).ToString() + ":30"; } // this.cboHoraIni.SelectedValue = "7:00";// Request.Form["ctl00$CPHC$hdnHora"].ToString().Trim(); if (this.cboHoraIni.SelectedIndex < 22) { this.cboHoraFin.SelectedValue = "18:00"; //this.cboHoraIni.SelectedIndex + 1; } else { this.cboHoraFin.SelectedIndex = this.cboHoraIni.SelectedIndex + 1; } } else { //Botonera.Items[4].Enabled = false; //Botonera.Items[6].Enabled = true; //Botonera.Items[8].Enabled = true; if (Request.QueryString["hdnReserva"] != null) { sIDReserva = Utilidades.decodpar(Request.QueryString["hdnReserva"].ToString());//Request.Form["ctl00$CPHC$hdnReserva"]; } if (sIDReserva != null) { hdnIDReserva.Text = sIDReserva; WIFI oWifi = WIFI.Obtener(null, int.Parse(hdnIDReserva.Text)); this.txtSolicitante.Text = Session["CR2I_APELLIDO1"].ToString() + " " + Session["CR2I_APELLIDO2"].ToString() + ", " + Session["CR2I_NOMBRE"].ToString(); //this.txtCIP.Text = Session["CR2I_CIP"].ToString(); this.txtInteresado.Text = oWifi.t085_interesado; this.txtFechaIni.Text = oWifi.t085_fechoraini.ToShortDateString(); this.txtFechaFin.Text = oWifi.t085_fechorafin.ToShortDateString(); this.cboHoraIni.SelectedValue = oWifi.t085_fechoraini.ToShortTimeString(); this.cboHoraFin.SelectedValue = oWifi.t085_fechorafin.ToShortTimeString(); this.txtEmpresa.Text = oWifi.t085_empresa; this.txtObservaciones.Text = oWifi.t085_observaciones; this.txtUsuario.Text = oWifi.t085_usuwifi; this.txtPwd.Text = oWifi.t085_pwdwifi; this.hdnEstado.Text = oWifi.t085_estado.ToString(); //fstConexion.Style.Add("visibility","visible"); if (oWifi.t085_estado == 3 || oWifi.t085_estado == 4) { //Botonera.Items[0].Enabled = false; //if (oWifi.t085_estado == 4) // Botonera.Items[2].Enabled = false; //System.Web.UI.Control Area = this.FindControl("AreaTrabajo"); //ModoLectura.Poner(Area.Controls); sLectura = "true"; System.Web.UI.Control Area = this.AreaTrabajo.FindControl("tblFiltros"); if (Area != null) { ModoLectura.Poner(Area.Controls); } else { ModoLectura.Poner(this.Controls); } } } } }//Fin de Postback //CargarDatos(); } }// Fin de Load
private void Eliminar() { bool bError = false; ArrayList aListCorreo = new ArrayList(); string sAsunto = ""; string sTexto = ""; string sTO = ""; SqlConnection oConn = Conexion.Abrir(); SqlTransaction tr = Conexion.AbrirTransaccion(oConn); try { bEsAnular = "true"; WIFI oWifi = WIFI.Obtener(tr, int.Parse(hdnIDReserva.Text)); sTO = Session["CR2I_IDRED"].ToString(); sAsunto = "Anulación reserva WIFI."; string sFecIni = oWifi.t085_fechoraini.ToString(); if (sFecIni.Length == 19) { sFecIni = sFecIni.Substring(0, 16); } else { sFecIni = sFecIni.Substring(0, 15); } string sFecFin = oWifi.t085_fechorafin.ToString(); if (sFecFin.Length == 19) { sFecFin = sFecFin.Substring(0, 16); } else { sFecFin = sFecFin.Substring(0, 15); } //int nResul = WIFI.Eliminar(tr, int.Parse(hdnIDReserva.Text)); WIFI.Actualizar(tr, int.Parse(hdnIDReserva.Text), oWifi.t001_idficepi, oWifi.t085_interesado, oWifi.t085_empresa, oWifi.t085_fechoraini, oWifi.t085_fechorafin, oWifi.t085_observaciones, 4, oWifi.t085_pwdwifi); sTexto = @"<p style='font-size:12px'>La reserva WIFI para el interesado " + oWifi.t085_interesado + @"<br /><br /> <br /><span style='width:150px'><b>Inicio:</b></span> " + oWifi.t085_fechoraini.ToString() + @"<br /> <span style='width:150px'><b>Fin:</b></span> " + oWifi.t085_fechorafin.ToString() + @" <br /><br />Ha sido anulada por <b>" + Session["CR2I_APELLIDO1"].ToString() + @" " + Session["CR2I_APELLIDO2"].ToString() + @", " + Session["CR2I_NOMBRE"].ToString() + @" </b>.<br /><br /><span style='width:170px'><b>Motivo de anulación:</b></span> " + this.hdnAnulacion.Text + @"<br /><br /><br /></p>"; string[] aMail = { sAsunto, sTexto, sTO, "", "I", "" }; aListCorreo.Add(aMail); Conexion.CommitTransaccion(tr); sResultadoGrabacion = "OK"; } catch (Exception ex) { bError = true; this.sErrores = Errores.mostrarError("Error al avisar a los convocados de la anulación de la reseva", ex); Conexion.CerrarTransaccion(tr); return; } finally { Conexion.Cerrar(oConn); } try { Correo.EnviarCorreos(aListCorreo); } catch (Exception ex) { bError = true; sErrores += Errores.mostrarError("Error al enviar los mails de anulación de convocatoria:", ex); } if (bError == false) { Cancelar(); } }
private string obtenerDatos(string sSoloActivas) { string sFecAux = ""; StringBuilder sb = new StringBuilder(); try { //sb.Append("<table id='tblDatos' class='texto' style='WIDTH: 850px; table-layout:fixed; HEIGHT: 17px;cursor: url(../../../images/imgManoAzul2.cur)' cellspacing='0' border='0'>"); sb.Append("<table id='tblDatos' class='texto MA' style='width:850px; table-layout:fixed;' cellspacing='0' border='0'>"); sb.Append(" <colgroup>"); sb.Append(" <col style='width:295px;' />"); sb.Append(" <col style='width:295px' />"); sb.Append(" <col style='width:100px' />"); sb.Append(" <col style='width:100px' />"); sb.Append(" <col style='width:60px' />"); sb.Append(" </colgroup>"); sb.Append("<tbody>"); string sColor = ""; SqlDataReader dr = WIFI.CatalogoWifi((int)Session["CR2I_IDFICEPI"], (sSoloActivas == "1") ? true : false); while (dr.Read()) { sb.Append("<tr id='" + dr["t085_idreserva"].ToString() + "' style='height:16px;'"); //sb.Append(" style=\"height:16px; cursor:url(../../../images/imgManoAzul2.cur),pointer\" onclick='msse(this)' ondblclick='mdwifi(this.id)'>"); sb.Append(" onclick='msse(this)' ondblclick='mdwifi(this.id)'>"); sb.Append("<td><nobr class='NBR W290'>" + dr["Solicitante"].ToString() + "</nobr></td>"); sb.Append("<td><nobr class='NBR W290'>" + dr["t085_interesado"].ToString() + "</nobr></td>"); sFecAux = dr["t085_fechoraini"].ToString().Substring(0, 16); if (sFecAux.Substring(15, 1) == ":") { sFecAux = sFecAux.Substring(0, 11) + "0" + sFecAux.Substring(11, 4); } sb.Append("<td>" + sFecAux + "</td>"); sFecAux = dr["t085_fechorafin"].ToString().Substring(0, 16); if (sFecAux.Substring(15, 1) == ":") { sFecAux = sFecAux.Substring(0, 11) + "0" + sFecAux.Substring(11, 4); } sb.Append("<td>" + sFecAux + "</td>"); switch (dr["t085_estado"].ToString()) { case "1": sColor = "Orange"; break; case "2": sColor = "Green"; break; case "3": sColor = "Gray"; break; case "4": sColor = "Red"; break; } sb.Append("<td style='Color:" + sColor + "'>" + dr["des_estado"].ToString() + "</td>"); sb.Append("</tr>"); } dr.Close(); dr.Dispose(); sb.Append("</tbody>"); sb.Append("</table>"); return("OK@#@" + sb.ToString()); } catch (Exception ex) { return("Error@#@" + Errores.mostrarError("Error al obtener el catálogo de reservas wifi", ex)); } }
private void Grabar() { bool bErrorControlado = false; ArrayList aListCorreo = new ArrayList(); string sAsunto = ""; string sTexto = ""; string sTO = ""; string strFecIniOld = ""; string strFecFinOld = ""; string strInteresadoOld = ""; string strEmpresaOld = ""; string sUsuario = "", sPassword = ""; if (this.hdnIDReserva.Text != "") { //Si se trata de una reserva existente, se obtienen sus datos //para luego comunicar las modificaciones realizadas. WIFI oWifi = WIFI.Obtener(null, int.Parse(this.hdnIDReserva.Text)); strFecIniOld = oWifi.t085_fechoraini.ToString(); strFecFinOld = oWifi.t085_fechorafin.ToString(); strInteresadoOld = oWifi.t085_interesado; strEmpresaOld = oWifi.t085_empresa; if (strFecIniOld.Length == 19) { strFecIniOld = strFecIniOld.Substring(0, 16); } else { strFecIniOld = strFecIniOld.Substring(0, 15); } if (strFecFinOld.Length == 19) { strFecFinOld = strFecFinOld.Substring(0, 16); } else { strFecFinOld = strFecFinOld.Substring(0, 15); } } SqlConnection oConn = Conexion.Abrir(); SqlTransaction tr = Conexion.AbrirTransaccion(oConn); DateTime dInicio = Fechas.crearDateTime(this.txtFechaIni.Text, this.cboHoraIni.SelectedValue); DateTime dFin = Fechas.crearDateTime(this.txtFechaFin.Text, this.cboHoraFin.SelectedValue); DateTime dNow = DateTime.Now; try { if (this.hdnIDReserva.Text == "") //insert { #region Código Insert sEsInsert = "true"; string sTicks = DateTime.Now.Ticks.ToString(); //string sTicksReducida = sTicks.Substring(10, 8); //sUsuario = "IB" + EncodeTo64(sTicksReducida).Substring(0, 6).ToUpper(); //sPassword = EncodeTo64((int.Parse(sTicksReducida) + ((int)Session["CR2I_IDFICEPI"] * int.Parse(sTicksReducida))).ToString()); //sPassword = sPassword.Substring(sPassword.Length - 10, 8); sPassword = sTicks.Substring(sTicks.Length - 4, 4); //sUsuario = "ib" + sTicksReducida; //sPassword = (int.Parse(sTicks.Substring(0, 8)) * (int)Session["CR2I_IDFICEPI"]).ToString().Substring(0, 8); //sPassword = (long.Parse(sTicks.Substring(sTicks.Length - 8, 8)) * long.Parse(Session["CR2I_IDFICEPI"].ToString())).ToString(); //sPassword = sPassword.Substring(sPassword.Length-8, 8); //Datos de la reserva byte nEstado = 1; if (dInicio < dNow && dFin > dNow) { nEstado = 2; } int nResul = WIFI.Insert(tr, (int)Session["CR2I_IDFICEPI"], txtInteresado.Text, txtEmpresa.Text, dInicio, dFin, txtObservaciones.Text, nEstado, sPassword); sUsuario = "ib" + nResul.ToString().Substring(nResul.ToString().Length - 4, 4); txtUsuario.Text = sUsuario; txtPwd.Text = sPassword; try { if (dInicio < dNow && dFin > dNow) {//hay que crear la reserva directamente en el LDAP DirectoryEntry de = new DirectoryEntry("LDAP://172.20.254.150:389/ou=people,dc=visitas,dc=ib", "cn=vadmin,dc=visitas,dc=ib", "PruebaLDAP", AuthenticationTypes.FastBind); DirectoryEntries entries = de.Children; DirectoryEntry oUser = entries.Add("cn=" + sUsuario, "inetOrgPerson"); //oUser.Properties["dn"].Add("cn=" + sUsuario + ",ou=people,dc=visitas,dc=ib"); oUser.Properties["objectClass"].Add("inetOrgPerson"); oUser.Properties["cn"].Add(sUsuario); oUser.Properties["sn"].Add(sUsuario); oUser.Properties["uid"].Add(sUsuario); oUser.Properties["userpassword"].Add(sPassword); oUser.Properties["ou"].Add("Visitas"); oUser.CommitChanges(); //DirectoryEntry oUserDelete = entries.Find("cn=" + sUsuario, "inetOrgPerson"); //entries.Remove(oUserDelete); //generar error //DirectoryEntry oUserDeletex = entries.Find("cn=x" + sUsuario, "inetOrgPerson"); } } catch (System.Runtime.InteropServices.COMException) { //string s = ""; //No existe o no se ha encontrado el usuario } catch (Exception ex) { sErrores = "Error : " + ex.Message; } hdnIDReserva.Text = nResul.ToString(); sTO = Session["CR2I_IDRED"].ToString(); sAsunto = "Reserva WIFI"; string sFecIni = Fechas.crearDateTime(this.txtFechaIni.Text, this.cboHoraIni.SelectedValue).ToString(); if (sFecIni.Length == 19) { sFecIni = sFecIni.Substring(0, 16); } else { sFecIni = sFecIni.Substring(0, 15); } string sFecFin = Fechas.crearDateTime(this.txtFechaFin.Text, this.cboHoraFin.SelectedValue).ToString(); if (sFecFin.Length == 19) { sFecFin = sFecFin.Substring(0, 16); } else { sFecFin = sFecFin.Substring(0, 15); } sTexto = "<p style='font-size:12px'>" + this.txtSolicitante.Text + @" ha solicitado una reserva WIFI para <b>" + this.txtInteresado.Text + @"</b><br /><br /><br /> <span style='width:150px'><b>Inicio:</b></span> " + sFecIni + @"<br /> <span style='width:150px'><b>Fin:</b></span> " + sFecFin + @"<br /><br /> <span style='width:150px'><b>Usuario:</b></span> " + txtUsuario.Text + @"<br /> <span style='width:150px'><b>Contraseña:</b></span> " + txtPwd.Text + @"<br /><br /> <span style='width:150px'><b>Observaciones:</b></span> " + txtObservaciones.Text.Replace(((char)10).ToString(), "<br />") + @"<br /><br /><br /><br /></p>"; string[] aMail = { sAsunto, sTexto, sTO, "", "I", "" }; aListCorreo.Add(aMail); #endregion } else //update { #region Código Update //Datos de la reserva WIFI oWifi = WIFI.Obtener(tr, int.Parse(hdnIDReserva.Text)); byte nEstado = oWifi.t085_estado; if (dInicio < dNow && dFin > dNow) { nEstado = 2; } WIFI.Actualizar(tr, int.Parse(hdnIDReserva.Text), (int)Session["CR2I_IDFICEPI"], txtInteresado.Text, txtEmpresa.Text, dInicio, dFin, txtObservaciones.Text, nEstado, txtPwd.Text); try { if (dInicio < dNow && dFin > dNow) { DirectoryEntry de = new DirectoryEntry("LDAP://172.20.254.150:389/ou=people,dc=visitas,dc=ib", "cn=vadmin,dc=visitas,dc=ib", "PruebaLDAP", AuthenticationTypes.FastBind); DirectoryEntries entries = de.Children; //1º Borrar la reserva WIFI que pudiera existir. try { DirectoryEntry oUserDelete = entries.Find("cn=" + txtUsuario.Text, "inetOrgPerson"); entries.Remove(oUserDelete); } catch (System.Runtime.InteropServices.COMException) { //string s = ""; //No existe o no se ha encontrado el usuario } //2º Hay que crear la reserva directamente en el LDAP DirectoryEntry oUser = entries.Add("cn=" + txtUsuario.Text, "inetOrgPerson"); //oUser.Properties["dn"].Add("cn=" + sUsuario + ",ou=people,dc=visitas,dc=ib"); oUser.Properties["objectClass"].Add("inetOrgPerson"); oUser.Properties["cn"].Add(txtUsuario.Text); oUser.Properties["sn"].Add(txtUsuario.Text); oUser.Properties["uid"].Add(txtUsuario.Text); oUser.Properties["userpassword"].Add(txtPwd.Text); oUser.Properties["ou"].Add("Visitas"); oUser.CommitChanges(); } } catch (System.Runtime.InteropServices.COMException) { //string s = ""; //No existe o no se ha encontrado el usuario } catch (Exception ex) { sErrores = "Error : " + ex.Message; } sTO = Session["CR2I_IDRED"].ToString(); sAsunto = "Modificación reserva WIFI."; string sFecIni = Fechas.crearDateTime(this.txtFechaIni.Text, this.cboHoraIni.SelectedValue).ToString(); if (sFecIni.Length == 19) { sFecIni = sFecIni.Substring(0, 16); } else { sFecIni = sFecIni.Substring(0, 15); } string sFecFin = Fechas.crearDateTime(this.txtFechaFin.Text, this.cboHoraFin.SelectedValue).ToString(); if (sFecFin.Length == 19) { sFecFin = sFecFin.Substring(0, 16); } else { sFecFin = sFecFin.Substring(0, 15); } sTexto = @"<p style='font-size:12px'>La reserva WIFI <br /><br /> <span style='width:150px'><b>Inicio:</b></span> " + strFecIniOld + @"<br /> <span style='width:150px'><b>Fin:</b></span> " + strFecFinOld + @"<br /><br /> <span style='width:150px'><b>Interesado:</b></span> " + strInteresadoOld + @"<br /> <br />Ha sido modificada por " + Session["CR2I_APELLIDO1"].ToString() + @" " + Session["CR2I_APELLIDO2"].ToString() + @", " + Session["CR2I_NOMBRE"].ToString() + @" y se reservará <br /><br /> <span style='width:150px'><b>Inicio:</b></span> " + sFecIni + @"<br /> <span style='width:150px'><b>Fin:</b></span> " + sFecFin + @"<br /><br /> <span style='width:150px'><b>Interesado:</b></span> " + txtInteresado.Text + @"<br /><br /> <span style='width:150px'><b>Usuario:</b></span> " + txtUsuario.Text + @"<br /> <span style='width:150px'><b>Contraseña:</b></span> " + txtPwd.Text + @"<br /><br /><br /><br /></p>"; string[] aMail = { sAsunto, sTexto, sTO, "", "I", "" }; aListCorreo.Add(aMail); #endregion } Conexion.CommitTransaccion(tr); sResultadoGrabacion = "OK"; } catch (Exception ex) { if (!bErrorControlado) { sErrores += Errores.mostrarError("Error al realizar la reserva:", ex); } else { sErrores = ex.Message; } Conexion.CerrarTransaccion(tr); } finally { Conexion.Cerrar(oConn); } try { Correo.EnviarCorreos(aListCorreo); } catch (Exception ex) { sErrores += Errores.mostrarError("Error al enviar los mails de convocatoria:", ex); } }
private async void OptCommon_Click(object sender, RoutedEventArgs e) { ToggleMenuFlyoutItem[] opts = new ToggleMenuFlyoutItem[] { optCommonLink, optCommonWifi, optCommonMail, optCommonGeo, optCommonContact, optCommonEvent }; var btn = sender as ToggleMenuFlyoutItem; foreach (ToggleMenuFlyoutItem opt in opts) { if (opt == btn) { opt.IsChecked = true; } else { opt.IsChecked = false; } } int selectedIndex = 0; if (sender == optCommonLink) { selectedIndex = 0; } else if (sender == optCommonWifi) { selectedIndex = 1; ContentPage.SSID = await WIFI.GetNetwoksSSID(); } else if (sender == optCommonMail) { selectedIndex = 2; } else if (sender == optCommonGeo) { selectedIndex = 3; } else if (sender == optCommonContact) { selectedIndex = 4; } else if (sender == optCommonEvent) { selectedIndex = 5; } if (selectedIndex >= 0) { ContentPage.SelectedIndex = selectedIndex; if (CURRENT_USINGDIALOG) { edContent.Items.Clear(); edQR.Visibility = Visibility.Visible; var dlgCommon = new CommonQRDialog(); dlgCommon.Items.Clear(); dlgCommon.Items.Add(ContentPage.SelectedItem); var dlgResult = await dlgCommon.ShowAsync(); if (dlgResult == ContentDialogResult.Primary) { edQR.Text = ContentPage.GetContents(); imgQR.Source = edQR.Text.EncodeQR(CURRENT_FGCOLOR, CURRENT_BGCOLOR, CURRENT_ECL); } dlgCommon.Items.Clear(); } else { edQR.Visibility = Visibility.Collapsed; edContent.Items.Clear(); edContent.Items.Add(ContentPage.SelectedItem); } } }