Exemplo n.º 1
0
        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");
        }
Exemplo n.º 2
0
        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!");
        }
Exemplo n.º 3
0
        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");
        }
Exemplo n.º 4
0
        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();
        }
Exemplo n.º 5
0
 protected void Page_Load(object sender, EventArgs e)
 {
     ParakeetUser Admin = ParakeetDb.Select <ParakeetUser>(new DbFilter("Username", "admin")).First();
 }