protected void btnRegister_Click(object sender, EventArgs e)
        {
            try
            {
                // Default UserStore constructor uses the default connection string named: DefaultConnection
                var userStore = new UserStore<IdentityUser>();
                var manager = new UserManager<IdentityUser>(userStore);

                var user = new IdentityUser() { UserName = txtUsername.Text };
                IdentityResult result = manager.Create(user, txtPassword.Text);

                if (result.Succeeded)
                {
                    //lblStatus.Text = string.Format("User {0} was created successfully!", user.UserName);
                    //lblStatus.CssClass = "label label-success";

                    var authenticationManager = HttpContext.Current.GetOwinContext().Authentication;
                    var userIdentity = manager.CreateIdentity(user, DefaultAuthenticationTypes.ApplicationCookie);
                    authenticationManager.SignIn(new AuthenticationProperties() { }, userIdentity);

                    //add user to users db
                    using (DefaultConnectionEF db = new DefaultConnectionEF())
                    {

                        blogUser u = new blogUser();
                        u.userID = user.Id;
                        u.fName = txtFName.Text;
                        u.lName = txtLName.Text;

                        db.blogUsers.Add(u);
                        db.SaveChanges();

                    }
                    //redirect to main menu
                    Response.Redirect("/admin/bibleMenu.aspx");
                }
                else
                {
                    //lblStatus.Text = result.Errors.FirstOrDefault();
                    //lblStatus.CssClass = "label label-danger";
                }
            }
            catch (Exception ex)
            {
                Response.Redirect("/errors.aspx");
            }
        }
        protected void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                var userStore = new UserStore<IdentityUser>();
                var manager = new UserManager<IdentityUser>(userStore);
                var userID = User.Identity.GetUserId();
                //do insert or update

                using (DefaultConnectionEF db = new DefaultConnectionEF())
                {
                    blog b = new blog();
                    blog_references bref = new blog_references();
                    blog_title btitle = new blog_title();
                    blog_post bpost = new blog_post();

                    int chapterid = Convert.ToInt32(ddlChapter.SelectedValue);
                    int verseid = Convert.ToInt32(ddlVerse.SelectedValue);

                    Int32 blogID = 0;

                    if ((Request.QueryString["blogID"]) != null)
                    {
                        blogID = Convert.ToInt32(Request.QueryString["blogID"]);
                        bref.blogID = blogID;
                        bpost.blogID = blogID;
                        btitle.blogID = blogID;
                    }

                    //set blog variable
                    b.blogID = blogID;
                    //set references variables
                    bref.bookName = ddlBook.SelectedValue;
                    bref.chapterID = Convert.ToInt32(ddlChapter.SelectedValue);
                    bref.verseID = Convert.ToInt32(ddlVerse.SelectedValue);
                    //set post variables
                    bpost.post = txtBlog.Text;
                    //set title variables
                    btitle.title = titleTxt.Text;

                    if (blogID == 0)
                    {
                        db.blogs.Add(b);
                        db.SaveChanges();

                        blogID = (from n in db.blogs
                                  where n.userID == userID
                                  orderby n.blogID descending
                                  select n.blogID).First();

                        bref.blogID = blogID;
                        bpost.blogID = blogID;
                        btitle.blogID = blogID;

                        db.blog_references.Add(bref);
                        db.blog_post.Add(bpost);
                        db.blog_title.Add(btitle);
                    }
                    db.SaveChanges();
                }
             }
            catch (Exception ex)
            {
                Response.Redirect("/errors.aspx");
            }

                Response.Redirect("/admin/notes.aspx");
        }
        /**
         * This method will delete a note by getting the row index and using the blogID
         * it will remove all instances from all tables.
         **/
        protected void grdNotes_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            Int32 selectedRow = e.RowIndex;

            //get the selected StudentID using the grids Data Key collection
            Int32 blogID = Convert.ToInt32(grdNotes.DataKeys[selectedRow].Values["blogID"]);

                using (DefaultConnectionEF db = new DefaultConnectionEF())
                {
                    //query for blog result
                    blog b = (from objs in db.blogs
                              where objs.blogID == blogID
                              select objs).FirstOrDefault();

                    //query for blog post result
                    blog_post bp = (from objs in db.blog_post
                                    where objs.blogID == blogID
                                    select objs).FirstOrDefault();

                    //query for blog title result
                    blog_title bt = (from objs in db.blog_title
                                     where objs.blogID == blogID
                                     select objs).FirstOrDefault();

                    //query for blog references result
                    blog_references br = (from objs in db.blog_references
                                          where objs.blogID == blogID
                                          select objs).FirstOrDefault();

                    //remove blog references
                    db.blog_references.Remove(br);
                    db.SaveChanges();
                    //remove blog title
                    db.blog_title.Remove(bt);
                    db.SaveChanges();
                    //remove blog post
                    db.blog_post.Remove(bp);
                    db.SaveChanges();
                    //remove blog
                    db.blogs.Remove(b);
                    db.SaveChanges();
                }
                //refresh the grid
                getNotes();
        }