コード例 #1
0
        protected void ValidateOAuth3rdLoginRequest(OAuthService provider, IOAuthTokenPost dataPost)
        {
            if (!OAuth.IsRequestToken)
            {
                throw new HttpBadRequestException(
                          "106 " + ControllerStrings.Warning106_RequestTokenRequired
                          );
            }

            this.OAuth3rdCredential =
                Database.OAuthCredentialStore.GetFirst(
                    filter: f =>
                    f.OAuthProvider == provider &&
                    f.Uid == dataPost.ID,
                    include:
                    new string[] { "User" }
                    );

            if (this.OAuth3rdCredential == null)
            {
                OAuth.Token.LoginAttempts++;
                Database.TokenStore.Update(OAuth.Token);
                Database.SaveChanges();

                throw new HttpNotFoundException(
                          "105 " + ControllerStrings.Warning105_SocialTokenNotFound
                          );
            }
        }
コード例 #2
0
        protected T OAuth3rdClient <T>(
            IOAuthTokenPost dataPost
            ) where T : FacebookClient
        {
            OAuthCryptoSet oAuthConsumer =
                new OAuthCryptoSet(
                    Settings.Default.FacebookClientConsumerKey,
                    Settings.Default.FacebookClientConsumerSecret
                    );

            return(Activator.CreateInstance(
                       typeof(T),
                       new object[] {
                oAuthConsumer,
                null,
                null
            }
                       ) as T);
        }
コード例 #3
0
        protected void ValidateOAuth3rdAddRequest(OAuthService provider, IOAuthTokenPost dataPost)
        {
            this.OAuth3rdCredential =
                Database.OAuthCredentialStore.GetFirst(
                    filter: f =>
                    f.OAuthProvider == provider &&
                    f.Uid == dataPost.ID
                    );

            if (this.OAuth3rdCredential == null)
            {
                return;
            }

            if (this.OAuth3rdCredential.User != null && this.OAuth3rdCredential.User.Guid != CurrentUser.Guid)
            {
                throw new HttpConflictException(
                          "109 " + ControllerStrings.Warning109_SocialTokenAlreadyInUse
                          );
            }
        }