示例#1
0
        public async Task CleanPasswordResets()
        {
            var oldPasswordResets = PasswordResets.Where(pr => pr.ExpiryDate < DateTime.UtcNow);

            PasswordResets.RemoveRange(oldPasswordResets);
            await SaveChangesAsync();
        }
        public async Task <IActionResult> PutPasswordResets(int id, PasswordResets passwordResets)
        {
            if (id != passwordResets.ResetId)
            {
                return(BadRequest());
            }

            _context.Entry(passwordResets).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!PasswordResetsExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
        public async Task <ActionResult <PasswordResets> > PostPasswordResets(PasswordResets passwordResets)
        {
            _context.PasswordResets.Add(passwordResets);
            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateException)
            {
                if (PasswordResetsExists(passwordResets.ResetId))
                {
                    return(Conflict());
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtAction("GetPasswordResets", new { id = passwordResets.ResetId }, passwordResets));
        }
        private void OnUserAction(string action)
        {
            if (!LandingConstants.ActionList.Contains(action))
            {
                throw new InvalidOperationException();
            }
            switch (action)
            {
            case LandingConstants.ACTION_LOGIN_VALIDATE:
                onLogin();
                break;

            case LandingConstants.ACTION_REGISTER_DONE:
                //testing
                var errors = NewUser.IsValid(phoneService);
                if (errors.Length > 0)
                {
                    _messenger.Publish(new MessageHandler(this, LandingConstants.RESULT_REGISTER_VALIDATION_FAILED).WithPayload(errors[0]));
                    this.NewUser = getNewUser();
                    return;
                }
                NewUser.Location = new CustomLocation(10, 10);     // to avoid location update fails.
                if (!string.IsNullOrEmpty(Settings.AccessToken))
                {
                    onUserUpdate("PUT");
                }
                else
                {
                    onUserUpdate();
                }
                break;

            case LandingConstants.ACTION_FB_LOGIN_VALIDATE:
            case LandingConstants.ACTION_TWITTER_LOGIN_VALIDATE:
            case LandingConstants.ACTION_GOOGLE_LOGIN_VALIDATE:

                var bundle = new MvxBundle();
#if DEBUG
                bundle.Data.Add(Settings.AccessTokenKey, @"{""__v"":9,""_id"":""5414b8b3f8e1d50b0016b0c1"",""accessToken"":""887393c64ca993c34efc5c095d64f6b6"",""dob"":""2014-08-13T00:00:00.000Z"",""email"":"""",""lastLogin"":""2014-09-15T06:12:08.773Z"",""name"":""andrei talantsy"",""password"":""talanta"",""phone"":""+33669081609"",""username"":""talanta3"",""Whistles"":[{""_id"":""5414bd88f8e1d50b0016b0c8"",""provider"":false,""public"":true,""comment"":""test"",""type"":""MINI_BUS"",""size"":[2,3],""connections"":[]},{""_id"":""5414be6ff8e1d50b0016b0c9"",""provider"":false,""public"":true,""comment"":""test"",""type"":""MINI_BUS"",""size"":[2,3],""connections"":[]},{""_id"":""5414c9e9e083c40b0089e327"",""provider"":false,""public"":true,""comment"":null,""type"":""MINI_BUS"",""size"":[3,4],""connections"":[]},{""_id"":""5414ca2fe083c40b0089e328"",""provider"":true,""public"":true,""comment"":null,""type"":""MINI_BUS"",""size"":[3,4],""connections"":[]},{""_id"":""5415884621fa1f0b0038d6f3"",""provider"":false,""public"":true,""comment"":null,""type"":""LARGE_CAR"",""size"":[3],""connections"":[]},{""_id"":""5415936d21fa1f0b0038d6f5"",""provider"":true,""public"":true,""comment"":null,""type"":""LARGE_CAR"",""size"":[3],""connections"":[]},{""_id"":""541596ae21fa1f0b0038d6f7"",""provider"":true,""public"":true,""comment"":null,""type"":""LARGE_CAR"",""size"":[3],""connections"":[]},{""_id"":""5415990921fa1f0b0038d6f9"",""provider"":true,""public"":true,""comment"":null,""type"":""LARGE_CAR"",""size"":[3],""connections"":[]},{""_id"":""54159a7921fa1f0b0038d6fb"",""provider"":false,""public"":true,""comment"":null,""type"":""LARGE_CAR"",""size"":[3],""connections"":[]}],""location"":{""type"":""Point"",""coordinates"":[65.9667,-18.5333]}}	");
#endif
                this.ShowViewModel <MainViewModel>(bundle);
                break;

            case LandingConstants.ACTION_TAKE_PICTURE_CAMERA:
                TakePicture();
                break;

            case LandingConstants.ACTION_TAKE_PICTURE_GALLERY:
                ChoosePicture();
                break;

            case LandingConstants.ACTION_REGISTER:
                _messenger.Publish(new MessageHandler(this, action));
                break;

            case LandingConstants.ACTION_REGISTER_CONTINUE:
            case LandingConstants.ACTION_REGISTER_VALIDATE:
                var validationErr = NewUser.IsValid(phoneService);
                if (validationErr.Length > 0)
                {
                    _messenger.Publish(new MessageHandler(this, LandingConstants.RESULT_REGISTER_VALIDATION_FAILED).WithPayload(validationErr[0]));
                }
                else
                {
                    _messenger.Publish(new MessageHandler(this, action));
                }
                break;

            case LandingConstants.ACTION_GET_PASSWORD_RESET_KEY:
                GetPasswordResetKey();
                break;

            case LandingConstants.ACTION_RESET_PASSWORD:
                var pErrors = PasswordResets.IsPassowrdMatched();
                if (pErrors.Length > 0)
                {
                    _messenger.Publish(new MessageHandler(this, LandingConstants.RESULT_REGISTER_VALIDATION_FAILED).WithPayload(pErrors[0]));
                    this.PasswordResets = new PasswordReset();
                    return;
                }
                ResetPassowrd();
                break;

            default:
                _messenger.Publish(new MessageHandler(this, action));
                break;
            }
        }