public JsonResult updateEmail(string email, string newEmail) { if (CheckEmailExists(newEmail)) { return(Json(new { succeeded = false, reason = "Email already exists." })); } try { using (var db = new PassManagerContext()) { db.Users .Single(u => u.email.ToLower() == email.ToLower()) .email = newEmail; db.SaveChanges(); return(Json(new { succeeded = true, token = TokenController.IssueToken(newEmail) })); } } catch (Exception e) { return(Json(new { succeeded = false, reason = "An error occured" })); } }
public JsonResult DeleteUser(string email) { try { using (var db = new PassManagerContext()) { User user = getUser(email); // remove user accounts var accounts = db.Accounts.Where(a => a.userID == user.ID); foreach (Account acc in accounts) { db.Accounts.Remove(acc); } // remove user db.Users.Remove(user); db.SaveChanges(); return(Json(new { succeeded = true })); } } catch (Exception e) { return(Json(new { succeeded = false, reason = "An error occured" })); } }
public JsonResult AddAccount(string accountJson, string email) { try { int userId = getUserId(email); Account account = JsonConvert.DeserializeObject <Account>(accountJson); using (var db = new PassManagerContext()) { // check if account is already present if (db.Accounts .Where(a => a.websiteUrl == account.websiteUrl && a.userID == userId) .ToList() .Any()) { return(Json(new { succeeded = false, reason = "Account already exists." })); } account.userID = userId; db.Accounts.Add(account); db.SaveChanges(); return(Json(new { succeeded = true })); } } catch (Exception e) { return(Json(new { succeeded = false, reason = "An error occurred." })); } }
public JsonResult Delete(string websiteUrl, string email) { try { int userId = getUserId(email); using (var db = new PassManagerContext()) { Account acc = db.Accounts .First(a => a.userID == userId && websiteUrl == a.websiteUrl); if (acc != null) { db.Accounts.Remove(acc); db.SaveChanges(); return(Json(new { succeded = true })); } else { return(Json(new { succeded = false, reason = "Failed to find item." })); } } } catch (Exception e) { return(Json(new { succeded = false, reason = "An error has occured" })); } }
public static void AddActivity(PassManagerContext db, User user, string jsonActivity) { Activity recent = JsonConvert.DeserializeObject <Activity>(jsonActivity); // add activity Settings settings = JsonConvert.DeserializeObject <Settings>(user.settings); List <Activity> activities = settings.recentActivity; if (activities.Count >= 10) { activities.RemoveAt(activities.Count - 1); } activities.Insert(0, recent); user.settings = JsonConvert.SerializeObject(settings); db.SaveChanges(); // alert user if (settings.alert) { MessageController.Alert(user, recent); } }
public JsonResult updateName(string email, string name) { try { using (var db = new PassManagerContext()) { db.Users .Single(u => u.email.ToLower() == email.ToLower()) .name = name; db.SaveChanges(); return(Json(new { succeeded = true })); } } catch (Exception e) { return(Json(new { succeeded = false, reason = "An error occured" })); } }
public JsonResult Update(string settingsJson, string email) { try { using (var db = new PassManagerContext()) { User user = db.Users .Single(u => u.email.ToLower() == email.ToLower()); user.settings = settingsJson; db.SaveChanges(); return(Json(new { succeeded = true })); } } catch (Exception e) { return(Json(new { succeeded = false, reason = "An error occurred." })); } }
public JsonResult SignUp(string name, string email, string password) { try { // check if email already exists if (CheckEmailExists(email)) { return(Json(new { succeeded = false, reason = "Email Already Exists" })); } string hash = Hash.HashHexPBKDF2(password); // hash pass using (var db = new PassManagerContext()) { db.Users.Add(new User(name, email.ToLower(), hash)); db.SaveChanges(); return(Json(new { succeeded = true, token = TokenController.IssueToken(email) })); } } catch (Exception e) { return(Json(new { succeeded = false, reason = "An error occured." })); } }