protected void btnRegister_Click(object sender, EventArgs e) { string Username = tbUsername.Text; string Password = tbPassword.Text; string Password2 = tbPassword2.Text; if (Password != Password2) { throw new Exception("Passwords do not match"); } ParakeetUser Usr = ParakeetDb.Select <ParakeetUser>(new DbFilter("Username", Username)).FirstOrDefault(); if (Usr != null) { throw new Exception("Username has been reserved"); } ParakeetUser NewUser = new ParakeetUser(); NewUser.Username = Username; NewUser.Salt = PasswordManager.GenerateSalt(); NewUser.Hash = PasswordManager.HashPassword(Password, NewUser.Salt); ParakeetDb.Insert(NewUser); SetUser(NewUser); Response.Redirect("~/Default.aspx"); }
protected void btnLogin_Click(object sender, EventArgs e) { string Username = tbUsername.Text; string Password = tbPassword.Text; bool RememberMe = cbRememberMe.Checked; ParakeetUser Usr = ParakeetDb.Select <ParakeetUser>(new DbFilter("Username", Username)).First(); if (Usr == null) { ThrowInvalidUserOrPass(); } if (!PasswordManager.IsValidPassword(Password, Usr.Salt, Usr.Hash)) { ThrowInvalidUserOrPass(); } SetUser(Usr); Response.Redirect("~/Default.aspx"); }
protected void Page_Load(object sender, EventArgs e) { ParakeetUser User = null; if (!CheckLoggedIn(out User)) { Response.Redirect("~/Login.aspx"); return; } NameValueCollection QS = Request.QueryString; string[] Tags = (QS.Get("tags") ?? "").Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries); if (Tags.Length == 0) { Tags = null; } ContentItem[] Items = ParakeetDb.Select <ContentID>().Where(CID => CID.HasTags(Tags)).Select(CID => new ContentItem(CID)).ToArray(); rptImages.DataSource = Items; rptImages.DataBind(); }
protected void Page_Load(object sender, EventArgs e) { ParakeetUser Admin = ParakeetDb.Select <ParakeetUser>(new DbFilter("Username", "admin")).First(); }