コード例 #1
0
        // GET api/ManageUser
        public async Task<string> Get()
        {
            Web.Models.ConfigModel config = new Web.Models.ConfigModel();
            string retVal = config.DefaultUserId;

            // Get the credentials for the logged-in user.
            var fbCredentials = await this.User.GetAppServiceIdentityAsync<FacebookCredentials>(this.Request);

            if (null != fbCredentials && fbCredentials.Claims.Count > 0)
            {
                // Create a query string with the Facebook access token.
                var fbRequestUrl = "https://graph.facebook.com/v2.5/me?fields=email%2Cfirst_name%2Clast_name&access_token="
                    + fbCredentials.AccessToken;

                // Create an HttpClient request.
                var client = new System.Net.Http.HttpClient();

                // Request the current user info from Facebook.
                var resp = await client.GetAsync(fbRequestUrl);
                resp.EnsureSuccessStatusCode();

                // Do something here with the Facebook user information.
                var fbInfo = await resp.Content.ReadAsStringAsync();

                JObject fbObject = JObject.Parse(fbInfo);
                var emailToken = fbObject.GetValue("email");

                if (null != emailToken)
                {
                    string email = emailToken.ToString();
                    retVal = CheckAddEmailToDB(email);
                }
                else
                {
                    return retVal;
                }

                return retVal;
            }

            var aadCredentials = await this.User.GetAppServiceIdentityAsync<AzureActiveDirectoryCredentials>(this.Request);
            if (null != aadCredentials && aadCredentials.Claims.Count > 0)
            {
                string email = aadCredentials.UserId;

                retVal = CheckAddEmailToDB(email);
            }

            return retVal;
        }
コード例 #2
0
        // DELETE tables/Album/48D68C86-6EA6-4C25-AA33-223FC9A27959
        public Task DeleteAlbum(string id)
        {
            Web.Models.ConfigModel config = new Web.Models.ConfigModel();
            string defaultAlbumId         = config.DefaultAlbumId;

            if (id == defaultAlbumId)
            {
                return(Task.Run(() => {
                    return "Default Album cannot be deleted !!";
                }

                                ));
            }

            var imgCtrl = new ImageController();
            var album   = Lookup(id).Queryable.First();

            foreach (var img in album.Images)
            {
                var res = imgCtrl.DeleteImage(img.Id);
            }

            return(DeleteAsync(id));
        }
コード例 #3
0
 public ManageUserController()
 {
     Web.Models.ConfigModel config = new Web.Models.ConfigModel();
     _defaultUserId = config.DefaultUserId;
 }