Exemplo n.º 1
0
        public int PersonGetIdFromToken(String token, string deviceId, Domain.TokenType type)
        {
            if (String.IsNullOrEmpty(deviceId))
            {
                deviceId = DefaultDeviceId;
            }

            Domain.MobiToken objToken = Manager.GetAll <Domain.MobiToken>(mt => mt.Token == token && mt.DeviceId == deviceId)// && mt.Type == type)
                                        .Skip(0)
                                        .Take(1)
                                        .FirstOrDefault();

            //return objToken;

            if (objToken == null)
            {
                return(-1);
            }
            else if (objToken.IsExpired)
            {
            }
            //return -1;

            return(objToken.PersonId);
        }
Exemplo n.º 2
0
        //private TokenCheckPrevious


        private string TokenGenerate(InternalLoginInfo user, string deviceId, Domain.TokenType type)
        {
            if (user == null || user.Person == null)
            {
                return("");
            }

            if (String.IsNullOrEmpty(deviceId))
            {
                deviceId = DefaultDeviceId;
            }

            Domain.MobiToken token = Manager.GetAll <Domain.MobiToken>(mt => mt.PersonId == user.Person.Id && mt.DeviceId == deviceId)
                                     .Skip(0)
                                     .Take(1)
                                     .FirstOrDefault();

            if (token == null)
            {
                token      = new Domain.MobiToken();
                token.Type = type;
            }
            else
            {
                //token.Type = type;
            }

            token.CreateOn = DateTime.Now;
            token.PersonId = user.Person.Id;
            token.Token    = System.Guid.NewGuid().ToString();
            token.DeviceId = deviceId;


            try
            {
                if (!Manager.IsInTransaction())
                {
                    Manager.BeginTransaction();
                }

                Manager.SaveOrUpdate <Domain.MobiToken>(token);

                Manager.Commit();
            }
            catch (Exception)
            {
                if (Manager.IsInTransaction())
                {
                    Manager.RollBack();
                }
                return("");
            }

            ClearOldToken(user.Person.Id, type, token.Id, deviceId);

            return(token.Token);
        }
Exemplo n.º 3
0
        /// <summary>
        /// Aggiorna il Token: per ApiWrapper!
        /// </summary>
        /// <param name="personId">Id Person corrente</param>
        /// <param name="deviceId">WorkingSessionId</param>
        /// <param name="type">Tipo di token</param>
        /// <param name="forceUpdate">Forza la generazione di un nuovo token</param>
        /// <returns>Token</returns>
        public string TokenRefresh(int personId, string deviceId, Domain.TokenType type, bool forceUpdate)
        {
            litePerson user = Manager.Get <litePerson>(personId);

            if (user == null)
            {
                return("");
            }

            if (String.IsNullOrEmpty(deviceId))
            {
                return("");
            }
            //deviceId = DefaultDeviceId;

            Domain.MobiToken token = Manager.GetAll <Domain.MobiToken>(
                mt => mt.PersonId == user.Id &&
                mt.DeviceId == deviceId)       // && mt.Type == type)
                                     .Skip(0)
                                     .Take(1)
                                     .FirstOrDefault();

            if (forceUpdate || token == null || String.IsNullOrEmpty(token.Token))
            {
                token          = new Domain.MobiToken();
                token.PersonId = user.Id;
                token.Token    = System.Guid.NewGuid().ToString();
                token.DeviceId = deviceId;
                token.CreateOn = DateTime.Now;
                token.Type     = type;

                try
                {
                    if (!Manager.IsInTransaction())
                    {
                        Manager.BeginTransaction();
                    }

                    Manager.SaveOrUpdate <Domain.MobiToken>(token);

                    Manager.Commit();
                }
                catch (Exception)
                {
                    if (Manager.IsInTransaction())
                    {
                        Manager.RollBack();
                    }
                    return("");
                }
            }

            ClearOldToken(user.Id, type, token.Id, deviceId);

            return(token.Token);
        }