public static tblUser _checkUser(tblUser user)
        {
            SVDB_Entities db = new SVDB_Entities();

            tblUser _user =   db.tblUsers.Where(x => x.email == user.email && x.password == user.password).FirstOrDefault();
            if (_user != null) return _user;
            else return _user;
            
        }
        public ActionResult RegisterUser(tblUser user)
        {
            if (ModelState.IsValid && !UserManagement.checkUserByEmail(user.email))
            {
                UserManagement._addUser(user);
                CheckUser(user);
                return RedirectToAction("Index", "Home");
            }
            else return View("Login");

        }
 /// <summary>
 /// add user to database coming from register.
 /// </summary>
 /// <param name="user"></param>
 public static string _addUser(tblUser user)
 {
     using(SVDB_Entities db = new SVDB_Entities())
     {
         
             user.createOn = DateTime.Now;
             user.ipaddress = "127.0.0.1";
             db.tblUsers.Add(user);
             db.SaveChanges();
             return "User Created!";                            
     }
 }
 public ActionResult CheckUser(tblUser user)
 {
     if(ModelState.IsValid)
     {
         tblUser _user = UserManagement._checkUser(user);
         if (_user != null)
         {
             Session["user"] = _user;
             Session["userIsLoggedIn"] = true;
             FormsAuthentication.SetAuthCookie(_user.name, false);
             return RedirectToAction("Index", "Home");
         }
         return RedirectToAction("Login");               
     }
     else
     {
         return View("Login");
     }            
 }
        public ActionResult ExternalLogin1()
        {
            try
            {
                var url = Request.Url.Query;
                if (url != "")
                {
                    string queryString = url.ToString();
                    char[] delimiterChars = { '=' };
                    string[] words = queryString.Split(delimiterChars);
                    string code = words[1];
                    SocialNetwork.GoogleUserOutputData json_data = SocialNetwork.Googlemethod(code);
                    String email = String.Empty;
                    String id = String.Empty;
                    email = json_data.email;
                    id = json_data.given_name;
                    if (email != null && email != "")
                    {
                        tblUser user = new tblUser();
                        user.name = json_data.name;
                        user.email = email;
                        user.password = "******";
                        user.photo = json_data.picture;
                        if (!UserManagement.checkUserByEmail(user.email))
                        {
                            UserManagement._addUser(user);
                        }

                        FormsAuthentication.SetAuthCookie(user.name, false);
                        return RedirectToAction("Index", "Home");
                    }
                    else
                    {
                        return RedirectToAction("Login");
                    }
                }
                else
                {
                    return RedirectToAction("Login");
                }
            }

            catch (Exception ex)
            {
                return RedirectToAction("Login");
            }
        }
        public ActionResult FacebookCallback(string code)
        {
            var fb = new FacebookClient();
            dynamic result = fb.Post("oauth/access_token", new
            {
                client_id = "1009376659083791",
                client_secret = "344539eeb041baaaa416eb90c8df5ec4",
                redirect_uri = RedirectUri.AbsoluteUri,
                code = code
            });

            var accessToken = result.access_token;

            // Store the access token in the session for farther use
            Session["AccessToken"] = accessToken;

            // update the facebook client with the access token so  
            // we can make requests on behalf of the user
            fb.AccessToken = accessToken;

            // Get the user's information
            dynamic me = fb.Get("me?fields=first_name,middle_name,last_name,id,email,picture");
            string email = me.email;
            string firstname = me.first_name;
            string middlename = me.middle_name;
            string lastname = me.last_name;

            //
            tblUser user = new tblUser();
            user.name = me.first_name + " " + me.middle_name + " " + me.last_name;
            user.email = me.email;
            user.password = "******";
            //user.photo = me.picture;
            //user.photo = me.
            if (!UserManagement.checkUserByEmail(user.email))
            {
                UserManagement._addUser(user);
            }

            // Set the auth cookie
            FormsAuthentication.SetAuthCookie(user.name, false);
            return RedirectToAction("Index", "Home");
        }
 public static void addUserFb(tblUser user)
 {
 }