public bool DeleteUser(string username)
 {
     User u = new User();
     allUsers.TryRemove(username, out u);
     Save();
     return (u != null);
 }
        public TripDetailView()
        {
            InitializeComponent();
            user = (User)PhoneApplicationService.Current.State["user"];
            ApplicationBar = new ApplicationBar();

            ApplicationBar.Mode = ApplicationBarMode.Default;
            ApplicationBar.Opacity = 1.0;
            ApplicationBar.IsVisible = true;
            ApplicationBar.IsMenuEnabled = true;
            ApplicationBarIconButton addItem = new ApplicationBarIconButton();
            addItem.IconUri = new Uri("/Assets/Images/add.png", UriKind.Relative);
            addItem.Text = "Add Trip";
            ApplicationBar.Buttons.Add(addItem);
            addItem.Click += new EventHandler(addItem_Click);

            InputPane.GetForCurrentView().Showing += onKeyboardShowing;
            InputPane.GetForCurrentView().Hiding += onKeyboardHidding;

            Tripsss trip = PhoneApplicationService.Current.State["trip"] as Tripsss;
            Trip = trip;
            Debug.WriteLine("Trip name:" + Trip.Name);
            tripName.Text = trip.Name;
            Debug.WriteLine("main loaded");
            update();

        }
        // Validate Signup Attempt
        public JsonResult SingupValidate(string firstname, string lastname, string email, string password)
        {
            string response = "";
            using (MyDatabaseEntities ctx = new MyDatabaseEntities())
            {
                User u = ctx.Users.FirstOrDefault(x => x.Email == email);
                response = "failed";
                if (u == null && email != "admin")
                {
                    u = new User();

                    u.Email = email;
                    u.FirstName = firstname;
                    u.LastName = lastname;
                    u.Password = password;

                    ctx.Users.Add(u);
                    ctx.SaveChanges();

                    Session["id"] = u.UserId;
                    Session["type"] = "user";
                    Session["firstname"] = u.FirstName;
                    Session["lastname"] = u.LastName;
                    response = "success";
                }
            }
            return this.Json(response, JsonRequestBehavior.AllowGet);
        }
        private async void SignInBtn_Click(object sender, RoutedEventArgs e)
        {
            /*
            VERWIJDEREN
            */
            Name.Text = "mathias3";
            Password.Password = "******";

            if (Name.Text != "" && Password.Password != "")
            {
                Boolean validUser = false;
                User user = new User();




                Debug.WriteLine("Begin");
                ObservableCollection<User> ocUsers = await GetUsersFromCloudAsync();
                List<User> users = ocUsers.ToList();
                foreach (User userObj in users)
                {
                    if (Name.Text == userObj.Username)
                    {
                        //MessageBox.Show("Deze gebruiker bestaat al!");
                        if (Password.Password == userObj.Password)
                        {
                            user = userObj;
                            validUser = true;
                        }
                    }
                }
                if (validUser)
                {
                    PhoneApplicationService.Current.State["user"] = user;
                    NavigationService.Navigate(new Uri("/Views/Main.xaml", UriKind.Relative));
                    //Tripsss trip = new Tripsss();
                    //trip.Name = "Test";
                    //trip.Deadline = DateTime.Today.AddDays(20);

                    //Item item = new Item("New Item");
                    //trip.AddItem(item);

                    //user.AddTrip(trip);
                    //await App.MobileService.GetTable<User>().UpdateAsync(user);
                    //Debug.WriteLine(user.Trips);
                    //User newUser = (User) PhoneApplicationService.Current.State["user"];

                }
                else
                {
                    MessageBox.Show("Invalid username or password.");
                }
            }
            else
            {
                MessageBox.Show("Username and password have to be filled in!");
            }
        }
 public ActionResult Create(User us)
 {
     if(ModelState.IsValid)
     {
         db.Users.Add(us);
         db.SaveChanges();
     }
     return View();
 }
Beispiel #6
0
 public ActionResult DangKy(User us)
 {
     if (ModelState.IsValid)
     {
         // chèn dữ liệu vào bảng Users
         db.Users.Add(us);
         // lưu vào CSDL
         db.SaveChanges();
     }
     return View();
 }
 public void UpdateUser(User user)
 {
     using(var pooledRedisClient = new PooledRedisClientManager())
     using (var redis = pooledRedisClient.GetClient())
     {
         var redisUser = redis.As<User>();
         if(user.Id != 0) {
             redisUser.DeleteById(user.Id); // Delete old user using ID
             redisUser.Store(user);
         }
     }
 }
        public AddTrip()
        {
            InitializeComponent();
            user = (User)PhoneApplicationService.Current.State["user"];
            ApplicationBar = new ApplicationBar();

            ApplicationBar.Mode = ApplicationBarMode.Default;
            ApplicationBar.Opacity = 1.0;
            ApplicationBar.IsVisible = true;
            ApplicationBar.IsMenuEnabled = true;
            ApplicationBarIconButton addTrip = new ApplicationBarIconButton();
            addTrip.IconUri = new Uri("/Assets/Images/save.png", UriKind.Relative);
            addTrip.Text = "Save Trip";
            ApplicationBar.Buttons.Add(addTrip);
            addTrip.Click += new EventHandler(addTrip_Click);

        }
 public void CreateUser(User user)
 {
     using(var pooledRedisClient = new PooledRedisClientManager())
     using(var redis = pooledRedisClient.GetClient())
     {
         var redisUsers = redis.As<User>();
         if(user.Id == 0)
         {
             user.Id = (int)redisUsers.GetNextSequence();
         }
         redisUsers.Store(user);
         // Misc functions
         redis.SetValue(user.UserName + ":id", user.Id.ToString());
         var set = redis.Sets["Users"];
         set.Add(user.UserName);
     }
 }
        private async void SignUpBtn_OnClickancel_1(object sender, RoutedEventArgs e)
        {
            if (!Regex.IsMatch(Naam.Text.Trim(), @"^[A-Za-z_][a-zA-Z0-9_\s]*$"))
            {
                MessageBox.Show("Ongeldige naam");
            }
            else if (Password.Password.Length < 6)
            {
                MessageBox.Show("Paswoordlengte moet minimum 6 characters bezitten!");
            }
            else
            {
                Boolean userExists = false;
                User user = new User();
                user.Username = Naam.Text;
                user.Password = Password.Password;

                Debug.WriteLine("Begin");
                ObservableCollection<User> ocUsers = await GetUsersFromCloudAsync();
                List<User> users = ocUsers.ToList();
                foreach (User userObj in users)
                {
                    if (user.Username == userObj.Username)
                    {
                        userExists = true;
                    }
                }
                if (userExists)
                {
                    MessageBox.Show("Gebruiker bestaat al");
                }
                else
                {
                    App.MobileService.GetTable<User>().InsertAsync(user);
                    NavigationService.Navigate(new Uri("/Views/LoginScreen.xaml", UriKind.Relative));
                }
            }
        }
        public ActionResult Edit(User user, string confirmPassword)
        {
            // Validation checks
            List<string> validation = new List<string>();
            if (user.UserName == null)
            {
                validation.Add("Please enter a username");
            }
            if (user.Bio == null)
            {
                validation.Add("Please enter a biography");
            }
            if (user.Email == null)
            {
                validation.Add("Please enter your email");
            }
            if ((user.PasswordHash == null || confirmPassword == null || user.PasswordHash != confirmPassword) && user.Id == 0) // Only applies to adding a password, in which case the ID would be 0
            {
                validation.Add("Please enter and confirm your password");
            }
            if(RedisUserRepository.ReadUsername(user.UserName) != null) // if the user exists in the db
            {
                if(Context.Session.GetString("user") == null) // If they aren't logged in they're adding, and the name is taken
                {
                    validation.Add("That username is already taken");
                }
                else
                {
                    if ((JsonConvert.DeserializeObject<User>(Context.Session.GetString("user"))).UserName != user.UserName) // Spooky Scary Haxorz
                    {
                        validation.Add("You can only edit yourself, haxorz");
                    }
                }
            }
            ViewData["validationSummary"] = validation;

            if (!validation.Any()) // Validation complete
            {
                // Save new password
                if (user.OresAuthored == null)
                {
                    user.OresAuthored = new List<string>();
                }
                if (user.CommentsAuthored == null)
                {
                    user.CommentsAuthored = new List<int>();
                }
                if(user.CommentsLiked == null)
                {
                    user.CommentsLiked = new List<int>();
                }
                if(user.OresLiked == null)
                {
                    user.CommentsLiked = new List<int>();
                }

                if (user.Id == 0)
                {
                    user.PasswordHash = hasher.HashString(user.PasswordHash);
                    redisUser.CreateUser(user); // ID is set by .CreateUser, must re-access database to get the full object
                    Context.Session.SetString("user", JsonConvert.SerializeObject(RedisUserRepository.ReadUsername(user.UserName)));
                }
                else
                {
                    redisUser.UpdateUser(user);
                }
                return RedirectToAction("Index");
            }
            else
            {
                // Model is not valid, return view to the user
                return View();
            }
        }
 public void UpdateUserNoPass(User user)
 {
     using (var pooledRedisClient = new PooledRedisClientManager())
     using (var redis = pooledRedisClient.GetClient())
     {
         var redisUser = redis.As<User>();
         if (user.Id != 0)
         {
             user.PasswordHash = redis.GetById<User>(user.Id).PasswordHash; // It's gonna overwrite the password no matter what, so here we set the hash to the value stored in the db before it's overwritten
             redisUser.DeleteById(user.Id);
             redisUser.Store(user);
         }
     }
 }
        public Main()
        {
            InitializeComponent();
            try
            {
                if (NavigationContext.QueryString["update"].Contains("true"))
                {
                    update();
                }
            }
            catch
            {
            }

            user = (User) PhoneApplicationService.Current.State["user"];
            insertTrips(user);
            

            ApplicationBar = new ApplicationBar();

            ApplicationBar.Mode = ApplicationBarMode.Default;
            ApplicationBar.Opacity = 1.0;
            ApplicationBar.IsVisible = true;
            ApplicationBar.IsMenuEnabled = true;

            ApplicationBarIconButton addTrip = new ApplicationBarIconButton();
            addTrip.IconUri = new Uri("/Assets/Images/add.png", UriKind.Relative);
            addTrip.Text = "Add Trip";
            ApplicationBar.Buttons.Add(addTrip);
            addTrip.Click += new EventHandler(addTrip_Click);
        }
 private void insertTrips(User user)
 {
     if (user.GetTrips() != null)
     {
         foreach (Tripsss trip in user.GetTrips())
         {
             tripList.Items.Add(new TripView(trip));
         }
     }
 }
 private async void update()
 {
     ObservableCollection<User> ocUsers = await UpdateCurrentUser();
     User updatedUser = ocUsers.ToList().Where(u => u.Username.Equals(user.Username)).First();
     user = updatedUser;
     tripList.Items.Clear();
     insertTrips(user);
 }