usuarios(cerrar session, macaddres), se corrrigio doble click en login, actualizacion signalR

This commit is contained in:
JORGE LUIS CAUDILLO ESPARZA
2020-03-24 18:53:32 -07:00
parent d4711a09e4
commit c1d785316f
28 changed files with 21421 additions and 1910 deletions

View File

@@ -3417,8 +3417,6 @@ Public Class ClsPaginas
Dim sw As Diagnostics.Stopwatch
Protected Overridable Sub Page_PreInit(sender As Object, e As EventArgs) Handles Me.PreInit
sw = New Diagnostics.Stopwatch
sw.Start()
If Not User.Identity.IsAuthenticated OrElse UsuarioActual Is Nothing Then
Dim AuthorizeRequest As Boolean = False
Dim HuboError = False
@@ -3468,6 +3466,9 @@ Public Class ClsPaginas
End If
Else
sw = New Diagnostics.Stopwatch
sw.Start()
If Not Page.IsPostBack Then
'If Not CType(Session("UsuarioSIG"), Usuario).SeleccionoEmpresa AndAlso Request.ServerVariables("URL") <> "/Sistemas/PopUpSeleccionarEmpresa.aspx" Then
@@ -3500,7 +3501,20 @@ Public Class ClsPaginas
If UsuarioActual.CveEmpresa = 42 Then
Me.MasterPageFile = "~/Masters/Site42.master"
End If
If Not UsuarioActual.isLoginseted Then
'Dim ixs As Integer = -1
'For Each key As String In Request.Cookies.AllKeys
' ixs = ixs + 1
' If key = ".ASPXSIG" Then
' Exit For
' End If
'Next
ADSSession.ADSSessionConfig.SessionManager(ADSSession.OpcionSession.SetAspSig, ASPSIG:=Request.Cookies.Get(".ASPXSIG").Value)
UsuarioActual.isLoginseted = True
End If
'ADSSession.ADSSessionConfig.SessionManager(ADSSession.OpcionSession.SetAspSig, ASPSIG:=Request.Cookies[".ASPXSIG"].ToString())
ADSSession.ADSSessionConfig.SessionManager(ADSSession.OpcionSession.CambiarModulo, Nothing, -1, "", Request.Url.ToString())
'If Me.Request.ServerVariables("http_user_agent").ToLower.Contains("safari") AndAlso Page.ClientTarget <> "uplevel" Then Page.ClientTarget = "uplevel" 'Código agregado para que muestre bién el menu, en chrome
End If

View File

@@ -1297,7 +1297,7 @@ Public Class ClsSisNotificaciones
Dim DTNotificacionesApp = DTNotificacionesGPS.FiltraParametros("CveTipoPlantilla = 5")
If DTNotificacionesVentana IsNot Nothing AndAlso DTNotificacionesVentana.Rows.Count > 0 Then
Dim context = GlobalHost.ConnectionManager.GetHubContext(Of MyGPSHub)()
For Each Dr As DataRow In DTNotificacionesVentana.Rows
Dim Encabezado As String = Dr("Encabezado").ToString.Replace("{Vehiculo}", Dr("Vehiculo").ToString).Replace("{Clase}", Dr("Clase").ToString)
@@ -1321,7 +1321,7 @@ Public Class ClsSisNotificaciones
' )
Dim CveNotificacionBitacora As Integer = Dr("CveNotificacionBitacora").ToString.ToEntero
Dim context = GlobalHost.ConnectionManager.GetHubContext(Of MyGPSHub)()
SendNotificacionGPS(context, CveNotificacionBitacora, CveUsuario, Encabezado, Mensaje, TipoNotificacion, Pie, Sonido, Persistencia, Coords)
UpdateNotificacionesBitacoraNotifico(CveNotificacionBitacora, 1)

View File

@@ -154,6 +154,26 @@ Public Class ClsSisUsuarios
SqlTransacc = Nothing
End Sub
Public Function UsuariosGetTokenXEquipo(CveUsuario As Integer, CveUsuarioAutoriza As Integer, AdsCodex As String) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Sis_UsuariosGetTokenXEquipo")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
.Add("@CveUsuarioAutoriza", SqlDbType.Int).Value = CveUsuarioAutoriza
.Add("@AdsCodex", SqlDbType.VarChar).Value = AdsCodex
End With
Try
SqlAdapter.Fill(Data)
'If Data.Rows.Count > 0 Then
' = Data.Rows(0)("Token").ToString()
'End If
Retorno = True
Catch ex As SqlException
OnError("Ocurrio un error al guardar token por equipo.", ex)
Retorno = False
End Try
Return Retorno
End Function
Public Function ValidaUsuario(Usuario As String, Password As String, tIMEI As String, Optional CveEmpresa As Integer = -1) As Usuario
Dim Retorno As Usuario = Nothing
@@ -174,28 +194,28 @@ Public Class ClsSisUsuarios
If Data.Rows.Count > 0 Then
Retorno = New Usuario
Retorno.Acceso = Data.Rows(0)("Acceso").ToString.ToEntero
Retorno.CveUsuario = Data.Rows(0)("CveUsuario").ToString.ToEntero
Retorno.Acceso = Data.Rows(0)("Acceso").ToString().ToEntero()
Retorno.CveUsuario = Data.Rows(0)("CveUsuario").ToString().ToEntero()
Retorno.Usuario = Usuario
Retorno.Contraseña = Data.Rows(0)("Contraseña").ToString
Retorno.Nombre = Data.Rows(0)("Nombre").ToString
Retorno.CveRol = Data.Rows(0)("CveRol").ToString.ToEntero
Retorno.Rol = Data.Rows(0)("Rol").ToString
Retorno.Contraseña = Data.Rows(0)("Contraseña").ToString()
Retorno.Nombre = Data.Rows(0)("Nombre").ToString()
Retorno.CveRol = Data.Rows(0)("CveRol").ToString().ToEntero()
Retorno.Rol = Data.Rows(0)("Rol").ToString()
'Retorno.NombreEmpresa = Data.Rows(0)("Empresa").ToString
Retorno.CveEmpresa = Data.Rows(0)("CveEmpresa").ToString.ToEntero
Retorno.CvePlataforma = Data.Rows(0)("CvePlataforma").ToString.ToEntero
Retorno.CveEmpresa = Data.Rows(0)("CveEmpresa").ToString().ToEntero()
Retorno.CvePlataforma = Data.Rows(0)("CvePlataforma").ToString().ToEntero()
Retorno.FechaUltimoAcceso = Data.Rows(0)("FechaUltimoAcceso").ToString.ToDate
Retorno.FechaUltimoCambioContraseña = Data.Rows(0)("FechaUltimoCambioContraseña").ToString.ToDate
Retorno.ActCambiarContraseña = If(Data.Rows(0)("ActCambiarContraseña").ToString = "SI", True, False)
Retorno.TipoControl = Data.Rows(0)("TipoControl").ToString.ToEntero
Retorno.FechaUltimoAcceso = Data.Rows(0)("FechaUltimoAcceso").ToString().ToDate()
Retorno.FechaUltimoCambioContraseña = Data.Rows(0)("FechaUltimoCambioContraseña").ToString().ToDate()
Retorno.ActCambiarContraseña = If(Data.Rows(0)("ActCambiarContraseña").ToString() = "SI", True, False)
Retorno.TipoControl = Data.Rows(0)("TipoControl").ToString().ToEntero()
'*
Retorno.CveProveedor = Data.Rows(0)("CveProveedor").ToString.ToEntero
Retorno.EsSupervisorRH = CBool(Data.Rows(0)("EsSupervisorRH").ToString)
Retorno.CveProveedor = Data.Rows(0)("CveProveedor").ToString().ToEntero()
Retorno.EsSupervisorRH = CBool(Data.Rows(0)("EsSupervisorRH").ToString())
Retorno.CveCliente = Data.Rows(0)("CveCliente").ToString.ToEntero
Retorno.CveProveedor = Data.Rows(0)("CveProveedor").ToString.ToEntero
Retorno.CveCliente = Data.Rows(0)("CveCliente").ToString().ToEntero()
Retorno.CveProveedor = Data.Rows(0)("CveProveedor").ToString().ToEntero()
'Retorno.CveSupervisor = Data.Rows(0)("CveSupervisor").ToString.ToEntero
'Retorno.CveCoordinador = Data.Rows(0)("CveCoordinador").ToString.ToEntero
@@ -203,8 +223,13 @@ Public Class ClsSisUsuarios
'Retorno.Referencia = Data.Rows(0)("Referencia").ToString
'*
Retorno.NombreAbreviatura = Data.Rows(0)("NombreAbreviatura").ToString
Retorno.DescuentoAutorizado = Data.Rows(0)("DescuentoAutorizado").ToString.ToDouble
Retorno.NombreAbreviatura = Data.Rows(0)("NombreAbreviatura").ToString()
Retorno.DescuentoAutorizado = Data.Rows(0)("DescuentoAutorizado").ToString().ToDouble()
Retorno.CodigoAutorizado = Data.Rows(0)("CodigoAutorizado").ToString()
Dim autoip As String = Data.Rows(0)("AutorizadoxIP").ToString().ToUpper()
Retorno.AutorizadoxIP = (autoip = "1" OrElse autoip = "TRUE")
''Toma la primer letra de cada nombre
'Dim sbr As New StringBuilder
'For Each St As String In Retorno.Nombre.Split(" "c)
@@ -1731,6 +1756,25 @@ Public Class ClsSisUsuarios
Return Retorno
End Function
Public Function UsuariosRestriccioneXMacUpdate(CveUsuario As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Sis_UsuariosRestriccioneXMacUpdate")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As SqlException
OnError("Ocurrio un error al agregar las restricciones de acceso del Usuario.", ex)
End Try
Return Retorno
End Function
Public Function UsuariosRestriccionesAccesoUpdate(CveUsuarioRestriccion As Integer, IP As String, MAC As String, HI1 As String, HF1 As String, HI2 As String, HF2 As String, HI3 As String, HF3 As String, HI4 As String, HF4 As String, HI5 As String, HF5 As String, HI6 As String, HF6 As String, HI7 As String, HF7 As String, Optional CveUsuarioModifico As Integer = -1) As Boolean
Dim Retorno As Boolean = False

View File

@@ -55,8 +55,13 @@ Public Class Usuario
Public Property DescuentoAutorizado As Double
Public Property AutorizadoxIP As Boolean
Public Property CodigoAutorizado As String
Public Property UTCOffset As Integer
Public Property isLoginseted As Boolean = False
Public ReadOnly Property FechaActualCliente As DateTime
Get
If UTCOffset <> 0 Then
@@ -88,7 +93,8 @@ Public Class Usuario
HttpContext.Current.Session.Abandon() 'Destruye la session Si no no Entra al sessionEnd hasta que se expire el tiempo.
HttpContext.Current.Session.Clear() 'Destruye las variables de session
FormsAuthentication.SignOut()
HttpContext.Current.Response.Redirect(FormsAuthentication.DefaultUrl)
Dim PathAndQuery As String = String.Format("{0}?ReturnUrl={1}", FormsAuthentication.LoginUrl, Net.WebUtility.HtmlEncode(HttpContext.Current.Request.Url.PathAndQuery))
HttpContext.Current.Response.Redirect(PathAndQuery)
End If
End Sub
@@ -116,6 +122,8 @@ Namespace ADSSession
CambiarEmpresa = 4
getSession = 5
CambiarModulo = 6
SetAspSig = 7
CerrarSession = 8
End Enum
Public Enum OpcionHub As Integer
agregar = 1
@@ -159,7 +167,7 @@ Namespace ADSSession
HttpContext.Current.Session(strsessionDpage) = value
End Set
End Property
Public Shared Function SessionManager(opcion As OpcionSession, Optional obj As ADSSessionObj = Nothing, Optional CveEmpresa As Integer = -1, Optional SessionID As String = Nothing, Optional modulo As String = "") As Object
Public Shared Function SessionManager(opcion As OpcionSession, Optional obj As ADSSessionObj = Nothing, Optional CveEmpresa As Integer = -1, Optional SessionID As String = Nothing, Optional modulo As String = "", Optional ASPSIG As String = "", Optional CveUsuario As Integer = -1) As Object
SyncLock strsessionid 'todo el codigo que este dentro de este corchete no se ejecutara mas de una vez al mismo tiempo en el servidor
If _dicSessionobj Is Nothing Then
_dicSessionobj = New ConcurrentDictionary(Of String, ADSSessionObj)
@@ -190,12 +198,32 @@ Namespace ADSSession
End If
Case OpcionSession.getListasession
retorno = _dicSessionobj.Values.ToList()
Case OpcionSession.CerrarSession
Dim objlist = _dicSessionobj.Values.ToList()
For Each user As ADSSession.ADSSessionObj In objlist
If CveUsuario = user.CveUsuario AndAlso (CveEmpresa = -1 OrElse CveEmpresa = user.CveEmpresa) Then
Dim taspsig As String = user.ASPSIG '"94C6AC57E8599390A4B7B8AB41FEABEF466D9B31120BE06D78110E66265F1ACC5616297BF3B88EDCEE71EBCFE35484308F62C8017EAC29FB3F0FB45CEC09E8F03DFBB4A4DD890D45755B7A30185C6D01F20AEFA74BE3A25FD12D536B20DCB8D9940A3D95"
Dim tsessionID As String = user.SessionID
Dim url = System.Configuration.ConfigurationManager.AppSettings("urlcerrarSession").ToString()
Dim cookie As String = String.Format("ASP.NET_SessionId={0};.ASPXSIG={1}", tsessionID, taspsig)
sendURL(url, cookie)
End If
Next
Case OpcionSession.getSession
If _dicSessionobj.TryGetValue(SessionID, obj) Then
obj.CveEmpresa = CveEmpresa
End If
retorno = obj
Case OpcionSession.SetAspSig
If Not IsNothing(HttpContext.Current) AndAlso Not IsNothing(HttpContext.Current.Session) AndAlso Not IsNothing(HttpContext.Current.Session(strsessionid)) Then
obj = DirectCast(HttpContext.Current.Session(strsessionid), ADSSessionObj)
obj.ASPSIG = ASPSIG
If _dicSessionobj.TryGetValue(obj.SessionID, obj) Then
obj.ASPSIG = ASPSIG
End If
retorno = obj
End If
Case OpcionSession.CambiarModulo
If Not IsNothing(HttpContext.Current) AndAlso Not IsNothing(HttpContext.Current.Session) AndAlso Not IsNothing(HttpContext.Current.Session(strsessionid)) Then
obj = DirectCast(HttpContext.Current.Session(strsessionid), ADSSessionObj)
@@ -215,6 +243,36 @@ Namespace ADSSession
End SyncLock
End Function
Private Shared Function sendURL(ByVal URL As String, ByVal Optional Cookie As String = "", ByVal Optional maxTimeMilliseconds As Integer = 120000) As String
Dim resultado As String = ""
Try
Dim request As Net.HttpWebRequest = CType(Net.HttpWebRequest.Create(URL), Net.HttpWebRequest)
request.Timeout = maxTimeMilliseconds
request.Method = "POST"
request.ContentType = "text/xml; charset=utf-8"
If Not String.IsNullOrEmpty(Cookie) Then
request.Headers.Add("Cookie", Cookie)
End If
Using stream As IO.Stream = request.GetRequestStream()
Using stmw As IO.StreamWriter = New IO.StreamWriter(stream)
stmw.Write("")
End Using
End Using
Dim response As Net.WebResponse = CType(request.GetResponse(), Net.WebResponse)
Dim sr As IO.StreamReader = New IO.StreamReader(response.GetResponseStream())
resultado = sr.ReadToEnd()
sr.Close()
Catch ex As Exception
'Extenciones.ApplicationParameter.GuardaLogEx(ex, $"SOAPAction : {SOAPAction} XML : {xml}")
End Try
Return resultado
End Function
Private Shared Function getconid(obj As ADSHubObj) As String
Return obj.connectionid
@@ -241,6 +299,7 @@ Namespace ADSSession
Public Property CveUsuario As Integer
Public Property CveEmpresa As Integer
Public Property Modulo As String
Public Property ASPSIG As String
Public Property LastPostback As DateTime
Protected Property _SessionID As String
Private Property _ipAdrres As String

View File

@@ -1,13 +1,14 @@
<%@ WebHandler Language="VB" Class="SIGGPS" %>
Option Explicit On
Option Strict On
'Option Explicit On
'Option Strict On
Imports System
Imports System.Web
Imports System.Data
Imports Newtonsoft.Json.Linq
Imports Extensiones
Imports System.IO
Imports System.IO
Imports Microsoft.AspNet.SignalR
Public Class SIGGPS : Implements IHttpHandler, IRequiresSessionState
Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest
@@ -70,12 +71,17 @@ Public Class SIGGPS : Implements IHttpHandler, IRequiresSessionState
Private Sub EjecutarNotificaciones(ByVal context As HttpContext)
Dim Retorno As String = "[]"
'Dim contextc = Microsoft.AspNet.SignalR.GlobalHost.ConnectionManager.GetHubContext(Of MyGPSHub)()
'SendNotificacionGPS(contextc, 5, 1727, "Encabezado", "Mensaje", 2, "{""timeOut"":15000, ""extendedTimeOut"":16000}", "142608__autistic-lucario__error.wav", 0, SQLToGmapsJArray("POINT (-99.211688 19.717715)", "POINT").ToString())
Using ObjGPS As New ClsSisNotificaciones
ObjGPS.ObtenerNotificaciones()
End Using
context.Response.Write(Retorno)
End Sub
Public Sub SendNotificacionGPS(context As Microsoft.AspNet.SignalR.IHubContext, CveNotificacionBitacora As Integer, CveUsuario As Integer, Encabezado As String, Mensaje As String, TipoNotificacion As Integer, Pie As String, Sonido As String, Persistencia As Boolean, Coords As String)
context.Clients.All.addLatestNotification(Mensaje, CveUsuario, Encabezado, TipoNotificacion, Pie, Sonido, CveNotificacionBitacora, Persistencia, Coords)
End Sub
Private Sub GetImgInstalacion(ByVal context As HttpContext)
Dim params As String = Decripta(context.Request("r").ToString)
Dim Parametros = Me.Parametros(params)

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@@ -227,6 +227,7 @@
<asp:DropDownList ID="DdlIntervalo" CssClass="form-control select2me" runat="server">
<asp:ListItem Selected="True" Text="30 Min" Value="30"></asp:ListItem>
<asp:ListItem Text="60 Min" Value="60"></asp:ListItem>
<asp:ListItem Text="2 Hrs" Value="120"></asp:ListItem>
</asp:DropDownList>
<label for="<%= DdlIntervalo.ClientID.ToString()%>" style="width: 50%">Intervalo:</label>
</div>

View File

@@ -55,7 +55,13 @@ Partial Class Inicio
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
'Reporte de ventas sin registrar sig
'Dim obj As Object = GetType(HttpRuntime).GetProperty("CacheInternal", Reflection.BindingFlags.NonPublic Or Reflection.BindingFlags.[Static]).GetValue(Nothing, Nothing)
'Dim obj2 As Object() = CType(obj.[GetType]().GetField("_caches", Reflection.BindingFlags.NonPublic Or Reflection.BindingFlags.Instance).GetValue(obj), Object())
If Not IsNothing(Request("logout")) AndAlso Request("logout").ToString() = "1" Then
Usuario.CerrarSession()
Exit Sub
End If
'Reporte de ventas sin registrar sig
If UsuarioActual.TienePermisoProceso(287) Then
Using objgral As New ClsGenerales
@@ -618,8 +624,8 @@ Partial Class Inicio
Catch
End Try
Return SBSesiones.ToString
End Function
End Function
#Region " FULL CALENDAR "
Private Sub InicializaCalendar()
RegistraScript("InitCalendar();")
@@ -801,9 +807,9 @@ Partial Class Inicio
End Sub
Protected Sub BtnActualizaAdd_Click(sender As Object, e As EventArgs)
RBLRecurrencia_SelectedIndexChanged(RBLRecurrencia, EventArgs.Empty)
End Sub
End Sub
#End Region
Protected Sub ChkOIAsigne_CheckedChanged(sender As Object, e As EventArgs) Handles ChkOIAsigne.CheckedChanged, ChkOIPorHacer.CheckedChanged
CargaTareas()
End Sub
@@ -811,8 +817,8 @@ Partial Class Inicio
End Sub
Protected Sub BtnIndicador_Click(sender As Object, e As EventArgs)
End Sub
End Sub
#Region "DIRECTORIO TELEFONICO"
Private Sub CargaDirectorioTelefonico()
Dim ObjPersonal As New ClsRH
@@ -851,9 +857,9 @@ Partial Class Inicio
End If
End Sub
End Sub
#End Region
#Region "Metodos Graficar"
Public Function GraficaLineas(data As DataTable, Optional Titulo As String = "", Optional Subtitulo As String = "", Optional SinCols As String = "0", Optional VerValor As Boolean = False, Optional G1 As Boolean = False) As HighChart
Dim grafica As New HighChart
@@ -1082,14 +1088,14 @@ Partial Class Inicio
settings.NullValueHandling = NullValueHandling.Ignore
settings.Formatting = Formatting.Indented
Return JsonConvert.SerializeObject(obj, settings).ToString
End Function
End Function
#End Region
Protected Sub LnkIndicador_Click(sender As Object, e As EventArgs)
CargaGraficas()
End Sub
End Sub
#Region "COMUNICADO"
Protected Sub LnkAgregar_Click(sender As Object, e As EventArgs)
RegistraScript("$('#DvModalComunicado').modal('show');")
@@ -1150,7 +1156,7 @@ Partial Class Inicio
htmldiv.AppendFormat("{2}<div class='alert alert-info bg-purple' style='margin-bottom:0px; margin-left: 15px; margin-right: 15px;'><div class='row'><div class='col-md-1' style='padding-top: 7px;'><i class='{3}' style='font-size: 50px;color:white; opacity: 0.1;'></i></div> <div class='col-md-11' style='padding-left: 5;'><p style='margin: 0 0 0 0;'><strong>{0}</strong> {1}</p></div></div></div>", Titulo, Comentario, DIV.InnerHtml, Icono)
DIV.InnerHtml = htmldiv.ToString
End Sub
End Sub
#End Region
Protected Sub BtnEvaluarProveedores_Click(sender As Object, e As EventArgs)

View File

@@ -77,7 +77,7 @@
<asp:TextBox ID="TxtContraseña" runat="server" CssClass="form-control" placeholder="Contraseña" type="password" ClientIDMode="Static"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvContraseña" runat="server" ControlToValidate="TxtContraseña" Display="Static" ErrorMessage="<span class='has-error'><span id='username-error' class='help-block'>El campo <b>''Contraseña''</b> es necesario.</span></span>" ValidationGroup="LogIn"></asp:RequiredFieldValidator>
</div>
<div class="row " style ="display:none" >
<div class="row " style="display: none">
<div class="col-xs-6">
</div>
<div class="col-xs-6 restpass">
@@ -87,7 +87,7 @@
<div class="form-group text-right">
<asp:Button ID="BtnLogIn" runat="server" CssClass="btn btn-lg btn-success btn-block btn-login" Text="Entrar" OnClick="BtnLogIn_Click" ValidationGroup="LogIn" />
</div>
<div class="copyright">
<asp:Literal ID="Ltlcopyright" runat="server">2019 © AD Sistemas.</asp:Literal>
</div>
@@ -121,6 +121,7 @@
</asp:Panel>
<asp:TextBox ID="HddAdsCodex" CssClass="AdsCodex hidden" runat="server"></asp:TextBox>
<asp:HiddenField ID="HdfImagenes" ClientIDMode="Static" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>
@@ -138,6 +139,20 @@
prm.add_endRequest(function (s, e) {
Metronic.unblockUI();
});
//function SETAdsCodex(AdsCodex) {
// localStorage.setItem("AdsCodex", AdsCodex);
// HddAdsCodex = $('.AdsCodex');
// HddAdsCodex.val(AdsCodex);
//}
function LoadAdsCodex() {
let AdsCodex = localStorage.getItem("AdsCodex");
HddAdsCodex = $('.AdsCodex');
HddAdsCodex.val(AdsCodex);
}
LoadAdsCodex();
Sys.Application.add_load(function (s, e) {
LoadAdsCodex();
});
window.canUse = function (p) { if (!window._canUse) window._canUse = document.createElement("div"); var e = window._canUse.style, up = p.charAt(0).toUpperCase() + p.slice(1); return p in e || "Moz" + up in e || "Webkit" + up in e || "O" + up in e || "ms" + up in e };
(function () {

View File

@@ -170,64 +170,71 @@ Partial Class LogIn
Application("GlobalDTUsuarios") = value
End Set
End Property
Dim BtnLogIn_Clickenter As Integer = 0
Protected Sub BtnLogIn_Click(ByVal sender As Object, ByVal e As EventArgs) 'Handles CmdLogIn.Click
Dim ObjUsuario As New ClsSisUsuarios
Dim Usuario As Usuario = Nothing
'Dim UsuarioAsignaciones As Usuario = Nothing
If BtnLogIn_Clickenter = 0 Then 'esta variable se recicla con cada postaback
BtnLogIn_Clickenter = 1
Dim ObjUsuario As New ClsSisUsuarios
Dim Usuario As Usuario = Nothing
'Dim UsuarioAsignaciones As Usuario = Nothing
Usuario = ObjUsuario.ValidaUsuario(txtUsuario.Text, Encripta(TxtContraseña.Text.Trim), IMEI)
'UsuarioAsignaciones = ObjUsuario.ValidaUsuarioAsignacion(Usuario.CveUsuario, Usuario.CveEmpresa)
Usuario = ObjUsuario.ValidaUsuario(txtUsuario.Text, Encripta(TxtContraseña.Text.Trim), IMEI)
'UsuarioAsignaciones = ObjUsuario.ValidaUsuarioAsignacion(Usuario.CveUsuario, Usuario.CveEmpresa)
ADSSessionConfig.sessionUser = Usuario
ADSSessionConfig.sessionDpage = False
ObjUsuario.Dispose()
ADSSessionConfig.sessionUser = Usuario
ADSSessionConfig.sessionDpage = False
ObjUsuario.Dispose()
If Usuario IsNot Nothing Then
CreaObjetoEmpresa(Usuario)
ADSSessionConfig.sessionUser.MultipleEmpresa = True
If Usuario IsNot Nothing Then
If Not Usuario.AutorizadoxIP OrElse (HddAdsCodex.Text.Length > 0 AndAlso Usuario.CodigoAutorizado = HddAdsCodex.Text) Then
Dim x As New ADSSessionObj(Usuario.CveUsuario, Usuario.CveEmpresa)
Dim _sessionid = Encripta(String.Format("{0}|{1}", Usuario.CveUsuario, x.SessionID))
x = ADSSessionConfig.SessionManager(OpcionSession.agregarSession, x)
CreaObjetoEmpresa(Usuario)
ADSSessionConfig.sessionUser.MultipleEmpresa = True
If Usuario.CvePlataforma = 6 And Usuario.CveRol = 10 Then
'PLATAFORMA PORTAL CLIENTE
FormsAuthentication.RedirectFromLoginPage(_sessionid, False)
Response.Redirect("/PortalCliente/PortalCliente.aspx", True)
ElseIf Usuario.CvePlataforma = 7 And Usuario.CveRol = 11 Then
'PLATAFORMA PORTAL PROVEEDOR
FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
Response.Redirect("/PortalProveedor/PortalProveedor.aspx", True)
Dim x As New ADSSessionObj(Usuario.CveUsuario, Usuario.CveEmpresa)
Dim _sessionid = Encripta(String.Format("{0}|{1}", Usuario.CveUsuario, x.SessionID))
x = ADSSessionConfig.SessionManager(OpcionSession.agregarSession, x)
ElseIf Usuario.CveRol = 1200 And Usuario.Acceso > 0 Then
'PLATAFORMA GPS
Usuario.CvePlataforma = 3
FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
Response.Redirect("/PortalGPS/InicioGPS.aspx", True)
Else
'PLATAFORMA SIG
CType(Session("UsuarioSIG"), Usuario).CvePlataforma = 1
Dim dt As Data.DataTable = GlobalDTUsuarios(Usuario.CveUsuario)
If dt IsNot Nothing Then
If dt.Rows.Count >= 1 Then
If dt.Rows.Count > 1 Then
Usuario.MultipleEmpresa = True
End If
If Usuario.CvePlataforma = 6 And Usuario.CveRol = 10 Then
'PLATAFORMA PORTAL CLIENTE
FormsAuthentication.RedirectFromLoginPage(_sessionid, False)
Response.Redirect("/PortalCliente/PortalCliente.aspx", True)
ElseIf Usuario.CvePlataforma = 7 And Usuario.CveRol = 11 Then
'PLATAFORMA PORTAL PROVEEDOR
FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
Response.Redirect("/PortalProveedor/PortalProveedor.aspx", True)
ElseIf Usuario.CveRol = 1200 And Usuario.Acceso > 0 Then
'PLATAFORMA GPS
Usuario.CvePlataforma = 3
FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
Response.Redirect("/PortalGPS/InicioGPS.aspx", True)
Else
'PLATAFORMA SIG
CType(Session("UsuarioSIG"), Usuario).CvePlataforma = 1
Dim dt As Data.DataTable = GlobalDTUsuarios(Usuario.CveUsuario)
If dt IsNot Nothing Then
If dt.Rows.Count >= 1 Then
If dt.Rows.Count > 1 Then
Usuario.MultipleEmpresa = True
End If
FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
End If
End If
dt.Dispose()
End If
Else
Alert("El usuario no esta autorizado en este equipo, favor de contactar al administrador de usuarios.", TipoMensaje.MsgAdvertencia)
End If
dt.Dispose()
'If Usuario.Acceso > 0 Then
'Else
' Alert("Usuario con acceso limitado.", TipoMensaje.MsgAdvertencia)
'End If
Else
Alert("Usuario y/o Contraseña incorrectos.", TipoMensaje.MsgAdvertencia)
End If
'If Usuario.Acceso > 0 Then
'Else
' Alert("Usuario con acceso limitado.", TipoMensaje.MsgAdvertencia)
'End If
Else
Alert("Usuario y/o Contraseña incorrectos.", TipoMensaje.MsgAdvertencia)
End If
End Sub
@@ -250,34 +257,38 @@ Partial Class LogIn
End If
ObjEmpresa.Dispose()
End Sub
Dim BtnGuardar_Clickenter As Integer = 0
Protected Sub BtnGuardar_Click(sender As Object, e As EventArgs)
Dim TieneError As Boolean = False
Dim ObjUsuario As New ClsSisUsuarios
If BtnGuardar_Clickenter = 0 Then 'esta variable se recicla con cada postaback
BtnGuardar_Clickenter = 1
Dim TieneError As Boolean = False
Dim ObjUsuario As New ClsSisUsuarios
If ObjUsuario.UpdateUsuarioContrasenia(Encripta(TxtContrasenia1.Text), CveUsuario, CveEmpresa) Then
If ObjUsuario.GetUsuarios(CveUsuario) Then
If ObjUsuario.DtResultados.Rows.Count = 1 Then
Dim dr As DataRow = ObjUsuario.DtResultados.Rows(0)
If ObjUsuario.UpdateUsuarioContrasenia(Encripta(TxtContrasenia1.Text), CveUsuario, CveEmpresa) Then
If ObjUsuario.GetUsuarios(CveUsuario) Then
If ObjUsuario.DtResultados.Rows.Count = 1 Then
Dim dr As DataRow = ObjUsuario.DtResultados.Rows(0)
txtUsuario.Text = dr("Usuario").ToString
Dim Contraseña As String = Decripta(dr("Contraseña").ToString)
TxtContraseña.Text = Contraseña
txtUsuario.Text = dr("Usuario").ToString
Dim Contraseña As String = Decripta(dr("Contraseña").ToString)
TxtContraseña.Text = Contraseña
Else
TieneError = True
End If
Else
TieneError = True
End If
Else
TieneError = True
End If
Else
TieneError = True
End If
ObjUsuario.Dispose()
ObjUsuario.Dispose()
If Not TieneError Then
BtnLogIn_Click(Nothing, Nothing)
If Not TieneError Then
BtnLogIn_Clickenter = 0
BtnLogIn_Click(Nothing, Nothing)
End If
End If
End Sub
End Class

View File

@@ -1849,8 +1849,8 @@ jQuery(document).ready(function () {
loaderinit();
});
prm.add_endRequest(function (s, e) {
portletshowhide()
loaderEnd()
portletshowhide();
loaderEnd();
error = true;
});
Sys.Application.add_load(function (s, e) {

7024
Scripts/jquery-1.6.4-vsdoc.js vendored Normal file

File diff suppressed because it is too large Load Diff

9046
Scripts/jquery-1.6.4.js vendored Normal file

File diff suppressed because it is too large Load Diff

4
Scripts/jquery-1.6.4.min.js vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

9
Scripts/jquery.signalR-2.4.1.min.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@@ -47,7 +47,7 @@
DataTextField="Empresa" DataValueField="CveEmpresa" runat="server"></asp:ListBox>
</div>
</div>
<asp:GridView ID="GVDatos" OnRowDataBound="GVDatos_RowDataBound" runat="server" DataKeyNames="CveUsuario,CveEmpresa" AutoGenerateColumns="false" GridLines="none"
<asp:GridView ID="GVDatos" OnRowDataBound="GVDatos_RowDataBound" runat="server" DataKeyNames="CveUsuario,CveEmpresa,SessionID" AutoGenerateColumns="false" GridLines="none"
CssClass="table table-striped ScrollAD SearchAD GVDatos table-hover Widthall" CellSpacing="0" ShowHeaderWhenEmpty="true">
<Columns>
<asp:TemplateField HeaderText="Usuario">
@@ -90,9 +90,9 @@
<asp:LinkButton ID="LnkEnviarMensaje" OnClick="LnkEnviarMensaje_Click" CssClass="btn btn-circle btn-sm blue" runat="server" Text="<i class='fa fa-comments-o'></i>"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField Visible="false">
<asp:TemplateField Visible="true">
<ItemTemplate>
<asp:LinkButton data-toggle="tooltip" title="Eliminar sección" ID="LnkQuitar" OnClick="LnkQuitar_Click" CssClass="btn btn-circle btn-sm red" runat="server" Text="<i class='fa fa-close'></i>"></asp:LinkButton>
<asp:LinkButton data-toggle="tooltip" title="Eliminar sessión" ID="LnkQuitar" OnClick="LnkQuitar_Click" CssClass="btn btn-circle btn-sm red" runat="server" Text="<i class='fa fa-close'></i>"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>

View File

@@ -72,6 +72,7 @@ Partial Class SessionesActivas
dtU.Columns.Add("RemoteIpAddres", System.Type.GetType("System.String"))
dtU.Columns.Add("LastPostback", System.Type.GetType("System.DateTime"))
dtU.Columns.Add("Modulo", System.Type.GetType("System.String"))
dtU.Columns.Add("SessionID", System.Type.GetType("System.String"))
Dim dtF As DataTable = dtU.Clone
Dim objlist As List(Of ADSSession.ADSSessionObj) = ADSSession.ADSSessionConfig.SessionManager(ADSSession.OpcionSession.getListasession)
@@ -82,6 +83,7 @@ Partial Class SessionesActivas
row("RemoteIpAddres") = user.IpAddres
row("LastPostback") = user.LastPostback
row("Modulo") = user.Modulo
row("Modulo") = user.SessionID
dtF.Rows.Add(row.ItemArray())
End If
Next
@@ -105,6 +107,8 @@ Partial Class SessionesActivas
e.Row.Cells(2).Attributes.Add("colspan", "4")
e.Row.CssClass = "Titulos"
e.Row.FCLinkButton("LnkEnviarMensaje").Visible = False
e.Row.FCLinkButton("LnkQuitar").Visible = False
End If
' Dim info As ADSSession.GlobalSessionInfo = ADSSession.MySessionInfo.GlobalSessions.FirstOrDefault(Function(M) M.CveUsuario = e.Row.DataKey("CveUsuario").ToEntero() AndAlso M.CveEmpresa = e.Row.DataKey("CveEmpresa").ToEntero())
' If IsNothing(info) Then
@@ -130,10 +134,56 @@ Partial Class SessionesActivas
Protected Sub LnkQuitar_Click(sender As Object, e As EventArgs)
'Dim gvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
Dim gvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
'ADSSession.MySessionInfo.GlobalSessions.RemoveAll(Function(M) M.CveUsuario = gvRow.DataKey("CveUsuario").ToEntero())
'CargaDatos()
Dim cveUsuario As Integer = gvRow.DataKey("CveUsuario").ToEntero()
Dim CveEmpresa As Integer = gvRow.DataKey("CveEmpresa").ToEntero()
ADSSession.ADSSessionConfig.SessionManager(ADSSession.OpcionSession.CerrarSession, CveEmpresa:=CveEmpresa, CveUsuario:=cveUsuario)
'For Each user As ADSSession.ADSSessionObj In objlist
' If cveUsuario = user.CveUsuario AndAlso CveEmpresa = user.CveEmpresa Then
' Dim aspsig As String = user.ASPSIG '"94C6AC57E8599390A4B7B8AB41FEABEF466D9B31120BE06D78110E66265F1ACC5616297BF3B88EDCEE71EBCFE35484308F62C8017EAC29FB3F0FB45CEC09E8F03DFBB4A4DD890D45755B7A30185C6D01F20AEFA74BE3A25FD12D536B20DCB8D9940A3D95"
' Dim sessionID As String = user.SessionID
' Dim url = ("http://localhost:85/Inicio.aspx?logout=1")
' Dim cookie As String = String.Format("ASP.NET_SessionId={0};.ASPXSIG={1}", sessionID, aspsig)
' sendURL(url, cookie)
' sendURL("http://caudillo:85/Inicio.aspx?logout=1", cookie)
' End If
'Next
CargaDatos("")
End Sub
Private Function sendURL(ByVal URL As String, ByVal Optional Cookie As String = "", ByVal Optional maxTimeMilliseconds As Integer = 120000) As String
Dim resultado As String = ""
Try
Dim request As Net.HttpWebRequest = CType(Net.HttpWebRequest.Create(URL), Net.HttpWebRequest)
request.Timeout = maxTimeMilliseconds
request.Method = "POST"
request.ContentType = "text/xml; charset=utf-8"
If Not String.IsNullOrEmpty(Cookie) Then
request.Headers.Add("Cookie", Cookie)
End If
Using stream As IO.Stream = request.GetRequestStream()
Using stmw As IO.StreamWriter = New IO.StreamWriter(stream)
stmw.Write("")
End Using
End Using
Dim response As Net.WebResponse = CType(request.GetResponse(), Net.WebResponse)
Dim sr As IO.StreamReader = New IO.StreamReader(response.GetResponseStream())
resultado = sr.ReadToEnd()
sr.Close()
Catch ex As Exception
'Extenciones.ApplicationParameter.GuardaLogEx(ex, $"SOAPAction : {SOAPAction} XML : {xml}")
End Try
Return resultado
End Function
Protected Sub LnkEnviarMensaje_Click(sender As Object, e As EventArgs)
Dim gvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
RCveUsuario = gvRow.DataKey("CveUsuario")
@@ -142,7 +192,7 @@ Partial Class SessionesActivas
Protected Sub LnkEnviar_Click(sender As Object, e As EventArgs)
Dim lista As New List(Of String)
lista.Add(RCveUsuario)
lista.Add(RCveUsuario)
'Notificaciones.AlertaVentana(TxtMensaje.Text, lista)
Notificaciones.AlertaVentana(TxtMensaje.Text, lista, timeoutseconds:=0)
RegistraScript($"$(""#DivMensaje"").modal('hide');console.log('{Decripta(Context.User.Identity.Name)}')")

View File

@@ -193,6 +193,14 @@
<ajax:ValidatorCalloutExtender ID="VCOEmpresa" runat="server" HighlightCssClass="vco" TargetControlID="RFVEmpresa" Width="300px"></ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr>
<td>Sessión por equipo</td>
<td></td>
</tr>
<tr>
<td>Autorizar equipo</td>
<td></td>
</tr>
</table>
</div>
</div>
@@ -2288,6 +2296,7 @@
<ContentTemplate>
<asp:Button ID="BtnGuardar" runat="server" Text="Guardar" ValidationGroup="GrpGuardar" class="btn btn-primary" />
<asp:Button ID="BtnEliminar" runat="server" Text="Eliminar" class="btn btn-danger" />
<asp:LinkButton ID="BtnCerrarSession" OnClick="BtnCerrarSession_Click" runat="server" Text="Cerrar Session" class="btn btn-danger" />
<asp:ValidationSummary ID="VS" runat="server" DisplayMode="BulletList" ShowSummary="true" ValidationGroup="GrpGuardar" />
<asp:Button ID="BtnCancelar" runat="server" Text="Cancelar" OnClientClick="javascript:window.location.href='/Sistemas/Usuarios.aspx';return false" class="btn btn-default" />
</ContentTemplate>
@@ -2446,368 +2455,377 @@
</div>
<div id="DivAgregarRestricción" class="modal fade">
<asp:UpdatePanel UpdateMode="Conditional" ID="UpAgregarRestriccion" runat="server">
<div id="DivAgregarRestricción" class="modal fade ">
<asp:UpdatePanel UpdateMode="Conditional" class="modal-dialog " ID="UpAgregarRestriccion" runat="server"> <%--modal-lg--%>
<ContentTemplate>
<div class="modal-content">
<div class="modal-header" style="background-color: #258FD7; height: 30px; padding-top: 3px;">
<button type="button" class="close" data-dismiss="modal" style="top: 3px !important; margin-top: 6px !important;" aria-hidden="true"></button>
<h4 class="modal-title" style="color: #FFF;">Agregar Restricción de Acceso</h4>
</div>
<div class="modal-body">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header" style="background-color: #258FD7; height: 30px; padding-top: 3px;">
<button type="button" class="close" data-dismiss="modal" style="top: 3px !important; margin-top: 6px !important;" aria-hidden="true"></button>
<h4 class="modal-title" style="color: #FFF;">Agregar Restricción de Acceso</h4>
<div class="row">
<div class="col-md-3" style="max-width: 150px;">
IP:
</div>
<div class="col-md-3">
<asp:TextBox ID="TxtIP" Text="" runat="server" />
</div>
</div>
<div class="modal-body">
<div class="row">
<div class="col-md-3" style="max-width: 150px;">
IP:
</div>
<div class="col-md-3">
<asp:TextBox ID="TxtIP" Text="" runat="server" />
</div>
<div class="row">
<div class="col-md-3" style="max-width: 150px;">
Mac:
</div>
<div class="row">
<div class="col-md-3" style="max-width: 150px;">
MAC:
</div>
<div class="col-md-3">
<asp:TextBox ID="TxtMAC" Text="" runat="server" />
</div>
<div class="col-md-3">
<asp:TextBox ID="TxtMAC" Text="" runat="server" />
</div>
<div class="col-md-3">
<asp:LinkButton ID="LnkAutorizarEquipo" OnClick="LnkAutorizarEquipo_Click" CssClass="btn btn-success" runat="server">Vincular</asp:LinkButton>
<div class="row">
<div class="col-md-3" style="max-width: 150px;">
Aplica Restricción:
</div>
<div class="col-md-3">
<asp:CheckBox Text="" ID="ChkAplicaRestriccion" OnCheckedChanged="ChkAplicaRestriccion_CheckedChanged" AutoPostBack="true" runat="server" />
<%----%>
</div>
</div>
<br />
<br />
<div class="row" id="DivRestricciones" runat="server" visible="false">
<div class="col-md-12">
<table style="max-width: 500px;" class="Widthall table table-hover table-striped">
<thead>
<tr style="background-color: #dddddd; font-weight: bold;">
<td>Día de la Semana</td>
<td>Hora Inicio</td>
<td>Hora Fin</td>
</tr>
</thead>
<tbody>
<tr>
<td>
<asp:CheckBox Text="" ID="ChkTodos" OnCheckedChanged="ChkTodos_CheckedChanged" AutoPostBack="true" runat="server" />
Todos</td>
<td>
<div runat="server" id="DivHI0" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraInicio0" onblur="setTimeout(CambiaHoraInicio(this), 2000);" runat="server" CssClass="form-control HI" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraInicio0" runat="server" TargetControlID="TxtHoraInicio0" Mask="99:99" MaskType="time" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraInicio0" runat="server" ControlExtender="MEEHoraInicio0" CssClass="vco" ControlToValidate="TxtHoraInicio0" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraInicio0" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraInicio0" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraInicio0" runat="server" ControlToValidate="TxtHoraInicio0" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio01" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraInicio0" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
<td>
<div runat="server" id="DivHF0" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraFin0" onblur="CambiaHoraFin(this)" runat="server" CssClass="form-control" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraFin0" runat="server" TargetControlID="TxtHoraFin0" Mask="99:99" MaskType="time" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraFin0" runat="server" ControlExtender="MEEHoraFin0" CssClass="vco" ControlToValidate="TxtHoraFin0" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraFin0" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraFin0" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraFin0" runat="server" ControlToValidate="TxtHoraFin0" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEHoraFin01" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraFin0" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
</tr>
<tr>
<td>
<asp:CheckBox Text="" ID="ChkLunes" OnCheckedChanged="ChkLunes_CheckedChanged" AutoPostBack="true" runat="server" />
Lunes</td>
<td>
<div runat="server" id="DivHI1" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraInicio1" runat="server" CssClass="form-control HI" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraInicio1" runat="server" TargetControlID="TxtHoraInicio1" Mask="99:99" MaskType="time" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraInicio1" runat="server" ControlExtender="MEEHoraInicio1" CssClass="vco" ControlToValidate="TxtHoraInicio1" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraInicio1" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraInicio1" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraInicio1" runat="server" ControlToValidate="TxtHoraInicio1" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio11" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraInicio1" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
<td>
<div runat="server" id="DivHF1" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraFin1" runat="server" CssClass="form-control HF" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraFin1" runat="server" TargetControlID="TxtHoraFin1" Mask="99:99" MaskType="time" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraFin1" runat="server" ControlExtender="MEEHoraFin1" CssClass="vco" ControlToValidate="TxtHoraFin1" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraFin1" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraFin1" runat="server" ControlToValidate="TxtHoraFin1" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEHoraFin11" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraFin1" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
</tr>
<tr>
<td>
<asp:CheckBox Text="" ID="ChkMartes" OnCheckedChanged="ChkMartes_CheckedChanged" AutoPostBack="true" runat="server" />
Martes</td>
<td>
<div runat="server" id="DivHI2" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraInicio2" runat="server" CssClass="form-control HI" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraInicio2" runat="server" TargetControlID="TxtHoraInicio2" Mask="99:99" MaskType="time" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraInicio2" runat="server" ControlExtender="MEEHoraInicio2" CssClass="vco" ControlToValidate="TxtHoraInicio2" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraInicio2" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraInicio2" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraInicio2" runat="server" ControlToValidate="TxtHoraInicio2" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio21" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraInicio2" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
<td>
<div runat="server" id="DivHF2" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraFin2" runat="server" CssClass="form-control HF" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraFin2" runat="server" TargetControlID="TxtHoraFin2" Mask="99:99" MaskType="time" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraFin2" runat="server" ControlExtender="MEEHoraFin2" CssClass="vco" ControlToValidate="TxtHoraFin2" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraFin2" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraFin2" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraFin2" runat="server" ControlToValidate="TxtHoraFin2" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEHoraFin21" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraFin2" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
</tr>
<tr>
<td>
<asp:CheckBox Text="" ID="ChkMiercoles" OnCheckedChanged="ChkMiercoles_CheckedChanged" AutoPostBack="true" runat="server" />
Miercoles</td>
<td>
<div runat="server" id="DivHI3" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraInicio3" runat="server" CssClass="form-control HI" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraInicio3" runat="server" TargetControlID="TxtHoraInicio3" Mask="99:99" MaskType="time" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraInicio3" runat="server" ControlExtender="MEEHoraInicio3" CssClass="vco" ControlToValidate="TxtHoraInicio3" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraInicio3" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraInicio3" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraInicio3" runat="server" ControlToValidate="TxtHoraInicio3" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio31" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraInicio3" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
<td>
<div runat="server" id="DivHF3" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraFin3" runat="server" CssClass="form-control HF" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraFin3" runat="server" TargetControlID="TxtHoraFin3" Mask="99:99" MaskType="time" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraFin3" runat="server" ControlExtender="MEEHoraFin3" CssClass="vco" ControlToValidate="TxtHoraFin3" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraFin3" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraFin3" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraFin3" runat="server" ControlToValidate="TxtHoraFin3" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEHoraFin31" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraFin3" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
</tr>
<tr>
<td>
<asp:CheckBox Text="" ID="ChkJueves" OnCheckedChanged="ChkJueves_CheckedChanged" AutoPostBack="true" runat="server" />
Jueves</td>
<td>
<div runat="server" id="DivHI4" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraInicio4" runat="server" CssClass="form-control HI" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraInicio4" runat="server" TargetControlID="TxtHoraInicio4" Mask="99:99" MaskType="time" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraInicio4" runat="server" ControlExtender="MEEHoraInicio4" CssClass="vco" ControlToValidate="TxtHoraInicio4" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraInicio4" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraInicio4" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraInicio4" runat="server" ControlToValidate="TxtHoraInicio4" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio41" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraInicio4" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
<td>
<div runat="server" id="DivHF4" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraFin4" runat="server" CssClass="form-control HF" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraFin4" runat="server" TargetControlID="TxtHoraFin4" Mask="99:99" MaskType="time" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraFin4" runat="server" ControlExtender="MEEHoraFin4" CssClass="vco" ControlToValidate="TxtHoraFin4" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraFin4" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraFin4" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraFin4" runat="server" ControlToValidate="TxtHoraFin4" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEHoraFin41" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraFin4" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
</tr>
<tr>
<td>
<asp:CheckBox Text="" ID="ChkViernes" OnCheckedChanged="ChkViernes_CheckedChanged" AutoPostBack="true" runat="server" />
Viernes</td>
<td>
<div runat="server" id="DivHI5" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraInicio5" runat="server" CssClass="form-control HI" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraInicio5" runat="server" TargetControlID="TxtHoraInicio5" Mask="99:99" MaskType="time" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraInicio5" runat="server" ControlExtender="MEEHoraInicio5" CssClass="vco" ControlToValidate="TxtHoraInicio5" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraInicio5" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraInicio5" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraInicio5" runat="server" ControlToValidate="TxtHoraInicio5" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio51" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraInicio5" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
<td>
<div runat="server" id="DivHF5" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraFin5" runat="server" CssClass="form-control HF" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraFin5" runat="server" TargetControlID="TxtHoraFin5" Mask="99:99" MaskType="time" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraFin5" runat="server" ControlExtender="MEEHoraFin5" CssClass="vco" ControlToValidate="TxtHoraFin5" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraFin5" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraFin5" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraFin5" runat="server" ControlToValidate="TxtHoraFin5" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEHoraFin51" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraFin5" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
</tr>
<tr>
<td>
<asp:CheckBox Text="" ID="ChkSabado" OnCheckedChanged="ChkSabado_CheckedChanged" AutoPostBack="true" runat="server" />
Sabado</td>
<td>
<div runat="server" id="DivHI6" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraInicio6" runat="server" CssClass="form-control HI" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraInicio6" runat="server" TargetControlID="TxtHoraInicio6" Mask="99:99" MaskType="time" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraInicio6" runat="server" ControlExtender="MEEHoraInicio6" CssClass="vco" ControlToValidate="TxtHoraInicio6" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraInicio6" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraInicio6" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraInicio6" runat="server" ControlToValidate="TxtHoraInicio6" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio61" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraInicio6" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
<td>
<div runat="server" id="DivHF6" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraFin6" runat="server" CssClass="form-control HF" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraFin6" runat="server" TargetControlID="TxtHoraFin6" Mask="99:99" MaskType="time" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraFin6" runat="server" ControlExtender="MEEHoraFin6" CssClass="vco" ControlToValidate="TxtHoraFin6" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraFin6" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraFin6" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraFin6" runat="server" ControlToValidate="TxtHoraFin6" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEHoraFin61" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraFin6" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
</tr>
<tr>
<td>
<asp:CheckBox Text="" ID="ChkDomingo" OnCheckedChanged="ChkDomingo_CheckedChanged" AutoPostBack="true" runat="server" />
Domingo</td>
<td>
<div runat="server" id="DivHI7" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraInicio7" runat="server" CssClass="form-control HI" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraInicio7" runat="server" TargetControlID="TxtHoraInicio7" Mask="99:99" MaskType="time" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraInicio7" runat="server" ControlExtender="MEEHoraInicio7" CssClass="vco" ControlToValidate="TxtHoraInicio7" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraInicio7" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraInicio7" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraInicio7" runat="server" ControlToValidate="TxtHoraInicio7" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio71" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraInicio7" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
<td>
<div runat="server" id="DivHF7" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraFin7" runat="server" CssClass="form-control HF" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraFin7" runat="server" TargetControlID="TxtHoraFin7" Mask="99:99" MaskType="time" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraFin7" runat="server" ControlExtender="MEEHoraFin7" CssClass="vco" ControlToValidate="TxtHoraFin7" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraFin7" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraFin7" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraFin7" runat="server" ControlToValidate="TxtHoraFin7" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEHoraFin71" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraFin7" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="modal-footer">
<asp:UpdatePanel runat="server">
<ContentTemplate>
<asp:Button Text="Agregar Restricción" ID="BtnAgregarRestriccion" OnClick="BtnAgregarRestriccion_Click" CssClass="btn btn-primary" runat="server" />
<button type="button" data-dismiss="modal" class="btn btn-">Cerrar</button>
</ContentTemplate>
</asp:UpdatePanel>
<%--<div class="row">
<div class="col-md-3" style="max-width: 150px;">
Restrincción por Equipo:
</div>
<div class="col-md-3">
<asp:CheckBox ID="chkSessionxEquipo" runat="server" CssClass="chksino" Text=" " />
</div>
</div>--%>
<div class="row">
<div class="col-md-3" style="max-width: 150px;">
Aplica Restricción:
</div>
<div class="col-md-3">
<asp:CheckBox Text=" " CssClass="chksino " ID="ChkAplicaRestriccion" OnCheckedChanged="ChkAplicaRestriccion_CheckedChanged" AutoPostBack="true" runat="server" />
</div>
</div>
<br />
<br />
<div class="row" id="DivRestricciones" runat="server" visible="false">
<div class="col-md-12">
<table style="max-width: 500px;" class="Widthall table table-hover table-striped">
<thead>
<tr style="background-color: #dddddd; font-weight: bold;">
<td>Día de la Semana</td>
<td>Hora Inicio</td>
<td>Hora Fin</td>
</tr>
</thead>
<tbody>
<tr>
<td>
<asp:CheckBox Text="" ID="ChkTodos" OnCheckedChanged="ChkTodos_CheckedChanged" AutoPostBack="true" runat="server" />
Todos</td>
<td>
<div runat="server" id="DivHI0" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraInicio0" onblur="setTimeout(CambiaHoraInicio(this), 2000);" runat="server" CssClass="form-control HI" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraInicio0" runat="server" TargetControlID="TxtHoraInicio0" Mask="99:99" MaskType="time" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraInicio0" runat="server" ControlExtender="MEEHoraInicio0" CssClass="vco" ControlToValidate="TxtHoraInicio0" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraInicio0" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraInicio0" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraInicio0" runat="server" ControlToValidate="TxtHoraInicio0" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio01" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraInicio0" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
<td>
<div runat="server" id="DivHF0" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraFin0" onblur="CambiaHoraFin(this)" runat="server" CssClass="form-control" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraFin0" runat="server" TargetControlID="TxtHoraFin0" Mask="99:99" MaskType="time" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraFin0" runat="server" ControlExtender="MEEHoraFin0" CssClass="vco" ControlToValidate="TxtHoraFin0" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraFin0" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraFin0" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraFin0" runat="server" ControlToValidate="TxtHoraFin0" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEHoraFin01" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraFin0" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
</tr>
<tr>
<td>
<asp:CheckBox Text="" ID="ChkLunes" OnCheckedChanged="ChkLunes_CheckedChanged" AutoPostBack="true" runat="server" />
Lunes</td>
<td>
<div runat="server" id="DivHI1" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraInicio1" runat="server" CssClass="form-control HI" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraInicio1" runat="server" TargetControlID="TxtHoraInicio1" Mask="99:99" MaskType="time" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraInicio1" runat="server" ControlExtender="MEEHoraInicio1" CssClass="vco" ControlToValidate="TxtHoraInicio1" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraInicio1" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraInicio1" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraInicio1" runat="server" ControlToValidate="TxtHoraInicio1" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio11" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraInicio1" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
<td>
<div runat="server" id="DivHF1" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraFin1" runat="server" CssClass="form-control HF" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraFin1" runat="server" TargetControlID="TxtHoraFin1" Mask="99:99" MaskType="time" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraFin1" runat="server" ControlExtender="MEEHoraFin1" CssClass="vco" ControlToValidate="TxtHoraFin1" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraFin1" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraFin1" runat="server" ControlToValidate="TxtHoraFin1" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEHoraFin11" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraFin1" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
</tr>
<tr>
<td>
<asp:CheckBox Text="" ID="ChkMartes" OnCheckedChanged="ChkMartes_CheckedChanged" AutoPostBack="true" runat="server" />
Martes</td>
<td>
<div runat="server" id="DivHI2" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraInicio2" runat="server" CssClass="form-control HI" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraInicio2" runat="server" TargetControlID="TxtHoraInicio2" Mask="99:99" MaskType="time" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraInicio2" runat="server" ControlExtender="MEEHoraInicio2" CssClass="vco" ControlToValidate="TxtHoraInicio2" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraInicio2" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraInicio2" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraInicio2" runat="server" ControlToValidate="TxtHoraInicio2" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio21" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraInicio2" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
<td>
<div runat="server" id="DivHF2" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraFin2" runat="server" CssClass="form-control HF" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraFin2" runat="server" TargetControlID="TxtHoraFin2" Mask="99:99" MaskType="time" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraFin2" runat="server" ControlExtender="MEEHoraFin2" CssClass="vco" ControlToValidate="TxtHoraFin2" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraFin2" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraFin2" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraFin2" runat="server" ControlToValidate="TxtHoraFin2" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEHoraFin21" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraFin2" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
</tr>
<tr>
<td>
<asp:CheckBox Text="" ID="ChkMiercoles" OnCheckedChanged="ChkMiercoles_CheckedChanged" AutoPostBack="true" runat="server" />
Miercoles</td>
<td>
<div runat="server" id="DivHI3" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraInicio3" runat="server" CssClass="form-control HI" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraInicio3" runat="server" TargetControlID="TxtHoraInicio3" Mask="99:99" MaskType="time" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraInicio3" runat="server" ControlExtender="MEEHoraInicio3" CssClass="vco" ControlToValidate="TxtHoraInicio3" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraInicio3" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraInicio3" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraInicio3" runat="server" ControlToValidate="TxtHoraInicio3" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio31" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraInicio3" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
<td>
<div runat="server" id="DivHF3" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraFin3" runat="server" CssClass="form-control HF" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraFin3" runat="server" TargetControlID="TxtHoraFin3" Mask="99:99" MaskType="time" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraFin3" runat="server" ControlExtender="MEEHoraFin3" CssClass="vco" ControlToValidate="TxtHoraFin3" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraFin3" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraFin3" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraFin3" runat="server" ControlToValidate="TxtHoraFin3" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEHoraFin31" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraFin3" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
</tr>
<tr>
<td>
<asp:CheckBox Text="" ID="ChkJueves" OnCheckedChanged="ChkJueves_CheckedChanged" AutoPostBack="true" runat="server" />
Jueves</td>
<td>
<div runat="server" id="DivHI4" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraInicio4" runat="server" CssClass="form-control HI" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraInicio4" runat="server" TargetControlID="TxtHoraInicio4" Mask="99:99" MaskType="time" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraInicio4" runat="server" ControlExtender="MEEHoraInicio4" CssClass="vco" ControlToValidate="TxtHoraInicio4" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraInicio4" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraInicio4" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraInicio4" runat="server" ControlToValidate="TxtHoraInicio4" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio41" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraInicio4" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
<td>
<div runat="server" id="DivHF4" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraFin4" runat="server" CssClass="form-control HF" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraFin4" runat="server" TargetControlID="TxtHoraFin4" Mask="99:99" MaskType="time" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraFin4" runat="server" ControlExtender="MEEHoraFin4" CssClass="vco" ControlToValidate="TxtHoraFin4" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraFin4" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraFin4" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraFin4" runat="server" ControlToValidate="TxtHoraFin4" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEHoraFin41" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraFin4" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
</tr>
<tr>
<td>
<asp:CheckBox Text="" ID="ChkViernes" OnCheckedChanged="ChkViernes_CheckedChanged" AutoPostBack="true" runat="server" />
Viernes</td>
<td>
<div runat="server" id="DivHI5" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraInicio5" runat="server" CssClass="form-control HI" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraInicio5" runat="server" TargetControlID="TxtHoraInicio5" Mask="99:99" MaskType="time" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraInicio5" runat="server" ControlExtender="MEEHoraInicio5" CssClass="vco" ControlToValidate="TxtHoraInicio5" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraInicio5" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraInicio5" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraInicio5" runat="server" ControlToValidate="TxtHoraInicio5" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio51" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraInicio5" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
<td>
<div runat="server" id="DivHF5" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraFin5" runat="server" CssClass="form-control HF" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraFin5" runat="server" TargetControlID="TxtHoraFin5" Mask="99:99" MaskType="time" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraFin5" runat="server" ControlExtender="MEEHoraFin5" CssClass="vco" ControlToValidate="TxtHoraFin5" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraFin5" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraFin5" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraFin5" runat="server" ControlToValidate="TxtHoraFin5" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEHoraFin51" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraFin5" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
</tr>
<tr>
<td>
<asp:CheckBox Text="" ID="ChkSabado" OnCheckedChanged="ChkSabado_CheckedChanged" AutoPostBack="true" runat="server" />
Sabado</td>
<td>
<div runat="server" id="DivHI6" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraInicio6" runat="server" CssClass="form-control HI" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraInicio6" runat="server" TargetControlID="TxtHoraInicio6" Mask="99:99" MaskType="time" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraInicio6" runat="server" ControlExtender="MEEHoraInicio6" CssClass="vco" ControlToValidate="TxtHoraInicio6" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraInicio6" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraInicio6" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraInicio6" runat="server" ControlToValidate="TxtHoraInicio6" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio61" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraInicio6" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
<td>
<div runat="server" id="DivHF6" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraFin6" runat="server" CssClass="form-control HF" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraFin6" runat="server" TargetControlID="TxtHoraFin6" Mask="99:99" MaskType="time" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraFin6" runat="server" ControlExtender="MEEHoraFin6" CssClass="vco" ControlToValidate="TxtHoraFin6" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraFin6" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraFin6" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraFin6" runat="server" ControlToValidate="TxtHoraFin6" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEHoraFin61" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraFin6" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
</tr>
<tr>
<td>
<asp:CheckBox Text="" ID="ChkDomingo" OnCheckedChanged="ChkDomingo_CheckedChanged" AutoPostBack="true" runat="server" />
Domingo</td>
<td>
<div runat="server" id="DivHI7" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraInicio7" runat="server" CssClass="form-control HI" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraInicio7" runat="server" TargetControlID="TxtHoraInicio7" Mask="99:99" MaskType="time" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraInicio7" runat="server" ControlExtender="MEEHoraInicio7" CssClass="vco" ControlToValidate="TxtHoraInicio7" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraInicio7" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraInicio7" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraInicio7" runat="server" ControlToValidate="TxtHoraInicio7" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOHoraInicio71" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraInicio7" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
<td>
<div runat="server" id="DivHF7" style="display: inline-block; vertical-align: text-bottom;">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 60px !important; padding: 0px;">
<asp:TextBox ID="TxtHoraFin7" runat="server" CssClass="form-control HF" CausesValidation="true" Style="width: 50px" MaxLength="5"></asp:TextBox>
<span class="input-group-btn ">
<img src="/Imagenes/timepicker.png" alt="Hora" />
</span>
<ajax:MaskedEditExtender ID="MEEHoraFin7" runat="server" TargetControlID="TxtHoraFin7" Mask="99:99" MaskType="time" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:MaskedEditValidator ID="MEVHoraFin7" runat="server" ControlExtender="MEEHoraFin7" CssClass="vco" ControlToValidate="TxtHoraFin7" IsValidEmpty="False" EmptyValueMessage="La hora es requerida." InvalidValueMessage="La hora tiene formato incorrecto." Display="none" EmptyValueBlurredText="La hora es requerida." InvalidValueBlurredMessage="La hora tiene formato incorrecto." ValidationGroup="GrpRestricciones" />
<ajax:ValidatorCalloutExtender ID="VCEHoraFin7" runat="server" HighlightCssClass="vco" TargetControlID="MEVHoraFin7" Width="350px"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVHoraFin7" runat="server" ControlToValidate="TxtHoraFin7" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Hora Fin''</b> es necesario, por favor ingréselo." ValidationGroup="GrpRestricciones"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEHoraFin71" runat="server" HighlightCssClass="vco" TargetControlID="RFVHoraFin7" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="modal-footer">
<asp:UpdatePanel runat="server">
<ContentTemplate>
<asp:Button Text="Agregar Restricción" ID="BtnAgregarRestriccion" OnClick="BtnAgregarRestriccion_Click" CssClass="btn btn-primary" runat="server" />
<button type="button" data-dismiss="modal" class="btn btn-">Cerrar</button>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>

View File

@@ -546,6 +546,9 @@ Partial Class Sistemas_UsuarioDetalle
DdlRol.SelectedValue = ObjUsuario.CveRol.ToString
TxtCorreo.Text = ObjUsuario.Correo
Dim autoip As String = ObjUsuario.DtResultados.Rows(0)("AutorizadoxIP").ToString().ToUpper()
'chkSessionxEquipo.Checked = (autoip = "1" OrElse autoip = "TRUE")
'DdlSupervisa.SelectedValue = ObjUsuario.CveSupervisa.ToString
'DdlAutoriza.SelectedValue = ObjUsuario.CveAutoriza.ToString
@@ -586,6 +589,7 @@ Partial Class Sistemas_UsuarioDetalle
End Sub
Public Sub CargaDatosAsignadosAUsuario()
If CveUsuario < 0 Then Exit Sub
If DtAsignacionesMultiEmpresa IsNot Nothing AndAlso DtAsignacionesMultiEmpresa.FiltraParametros(String.Format("CveEmpresa = {0}", DdlEmpresaAsignaciones.SelectedValue.ToEntero)).Rows.Count > 0 Then
@@ -1098,7 +1102,7 @@ Partial Class Sistemas_UsuarioDetalle
End If
Next
End If
ObjUsuarios.UsuariosRestriccioneXMacUpdate(CveUsuario)
'CLONAR USUARIO
If Not TieneError Then
If EsNuevoUsuario Then
@@ -4750,4 +4754,18 @@ Partial Class Sistemas_UsuarioDetalle
#End Region
Protected Sub LnkAutorizarEquipo_Click(sender As Object, e As EventArgs)
'CveUsuario
Dim AdsCodex As String = Encripta(String.Format("{0}_{1}_{2}", CveUsuario, DateTime.Now.Ticks, UsuarioActual.CveUsuario))
Using objuser As New ClsSisUsuarios()
If objuser.UsuariosGetTokenXEquipo(CveUsuario, UsuarioActual.CveUsuario, AdsCodex) Then
RegistraScript(String.Format("localStorage.setItem('AdsCodex', '{0}');", AdsCodex), "adstokenx")
End If
End Using
Alert("El usuario se ha autorizado en el equipo")
End Sub
Protected Sub BtnCerrarSession_Click(sender As Object, e As EventArgs)
ADSSession.ADSSessionConfig.SessionManager(ADSSession.OpcionSession.CerrarSession, CveUsuario:=CveUsuario)
End Sub
End Class

View File

@@ -691,7 +691,7 @@
<div id="ajax-modal" class="modal fade" tabindex="-1" style="vertical-align: middle; text-align: center;">
</div>
<script type="text/javascript" src="/Scripts/jquery.signalR-2.2.2.min.js"></script>
<script type="text/javascript" src="/Scripts/jquery.signalR-2.4.1.min.js"></script>
<script type="text/javascript" src="/signalr/signalr/hubs"></script>
<%: Scripts.Render("~/Metronic/assets/global/scripts/JS") %>
<script type="text/javascript" src="/Scripts/Notificaciones.js?var1=1"></script>

View File

@@ -1019,7 +1019,7 @@
}
</script>
<script type="text/javascript" src="/Scripts/jquery.signalR-2.2.2.min.js"></script>
<script type="text/javascript" src="/Scripts/jquery.signalR-2.4.1.min.js"></script>
<script type="text/javascript" src="/signalr/signalr/hubs"></script>
<script type="text/javascript" src="/Metronic/assets/admin/layout/scripts/demo.js"></script>
<script src="/Metronic/assets/global/plugins/bootstrap-toastr/toastr.js"></script>

View File

@@ -3,11 +3,19 @@
<package id="AjaxControlToolkit" version="15.1.4.0" targetFramework="net4" />
<package id="AjaxControlToolkit.StaticResources" version="15.1.4.0" targetFramework="net4" />
<package id="Antlr" version="3.4.1.9004" targetFramework="net4" />
<package id="jQuery" version="1.6.4" targetFramework="net45" />
<package id="log4net" version="1.2.10" targetFramework="net45" />
<package id="Microsoft.AspNet.SignalR" version="2.4.1" targetFramework="net45" />
<package id="Microsoft.AspNet.SignalR.Core" version="2.4.1" targetFramework="net45" />
<package id="Microsoft.AspNet.SignalR.JS" version="2.4.1" targetFramework="net45" />
<package id="Microsoft.AspNet.SignalR.SystemWeb" version="2.4.1" targetFramework="net45" />
<package id="Microsoft.AspNet.Web.Optimization" version="1.1.3" targetFramework="net4" />
<package id="Microsoft.Bcl" version="1.1.9" targetFramework="net40" />
<package id="Microsoft.Bcl.Async" version="1.0.168" targetFramework="net40" />
<package id="Microsoft.Bcl.Build" version="1.0.14" targetFramework="net40" />
<package id="Microsoft.Owin" version="3.0.1" targetFramework="net45" />
<package id="Microsoft.Owin.Host.SystemWeb" version="3.0.1" targetFramework="net45" />
<package id="Microsoft.Owin.Security" version="3.0.1" targetFramework="net45" />
<package id="Microsoft.ReportingServices.ReportViewerControl.WebForms" version="150.1358.0" targetFramework="net45" />
<package id="Microsoft.ReportViewer.2015.Runtime" version="12.0.2.2402" targetFramework="net4" />
<package id="Microsoft.ReportViewer.Common.v12" version="12.0.0.1" targetFramework="net45" />
@@ -18,6 +26,7 @@
<package id="NC-OS-SessionStateProvider" version="4.4.0.0" targetFramework="net40" />
<package id="Newtonsoft.Json" version="8.0.2" targetFramework="net40" />
<package id="NuGet.Core" version="2.8.0" targetFramework="net4" />
<package id="Owin" version="1.0" targetFramework="net45" />
<package id="StackExchange.Redis.StrongName" version="1.0.488" targetFramework="net40" />
<package id="WebGrease" version="1.6.0" targetFramework="net40" />
</packages>

View File

@@ -28,6 +28,12 @@