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 btnUpload_Click(object sender, EventArgs e) { if (!fileUpload.HasFile) { PrintMessage("File was not attached"); return; } byte[] Bytes = fileUpload.FileBytes; string Name = Files.GetFileName(fileUpload.FileName); string Ext = Path.GetExtension(fileUpload.FileName).ToLower(); string NewName = Files.GenFileName(Ext); string[] Formats = new[] { ".jpg", ".png", ".gif" }; if (!Formats.Contains(Ext)) { PrintMessage(string.Format("Unsupported file format ({0})", string.Join(", ", Formats))); return; } if (Bytes.Length > 16000000) { PrintMessage("File size too big! 16 megabytes or less supported"); return; } HashSet <string> Tags = Utils.ParseTags(inTags.Text); Tags.Add(Name); Files.SaveImageFile(NewName, Bytes); ContentID Content = new ContentID(); Content.ContentType = ContentIDType.Image; Content.Name = Name; Content.OwnerID = User.ID; Content.Tags = Utils.JoinTags(Tags); Content.FileName = NewName; ParakeetDb.Insert(Content); Clear(); PrintMessage("Upload success!"); }