/// <summary>
        /// Save social media token
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public ResponseModel SaveSocialMediaToken(SocialMediaTokenManageModel model)
        {
            ResponseModel response;
            var           socialMediaToken = GetById(model.Id);

            if (socialMediaToken != null)
            {
                socialMediaToken.SocialMediaId = model.SocialMediaId;
                socialMediaToken.AppId         = model.AppId;
                socialMediaToken.AppSecret     = model.AppSecret;

                //Unset the Is default and Status to wait for the callback function
                socialMediaToken.IsDefault = false;
                socialMediaToken.Status    = SocialMediaEnums.TokenStatus.Pending;

                if (model.SocialMediaId == (int)SocialMediaEnums.SocialNetwork.Twitter)
                {
                    socialMediaToken.AccessToken       = model.AccessToken;
                    socialMediaToken.AccessTokenSecret = model.AccessTokenSecret;
                }

                response = Update(socialMediaToken);
                response.SetMessage(response.Success
                    ? T("SocialMediaToken_Message_UpdateSuccessfully")
                    : T("SocialMediaToken_Message_UpdateFailure"));
            }
            else
            {
                socialMediaToken = new SocialMediaToken
                {
                    SocialMediaId     = model.SocialMediaId,
                    AppId             = model.AppId,
                    AppSecret         = model.AppSecret,
                    AccessToken       = model.AccessToken,
                    AccessTokenSecret = model.AccessTokenSecret,
                    Status            = SocialMediaEnums.TokenStatus.Pending
                };
                response = Insert(socialMediaToken);
                response.SetMessage(response.Success
                    ? T("SocialMediaToken_Message_CreateSuccessfully")
                    : T("SocialMediaToken_Message_CreateFailure"));
            }

            if (response.Success)
            {
                var id = response.Data.ToInt();
                response.Data = GetAuthorizeUrl(id);
            }

            return(response);
        }
Example #2
0
 public ActionResult Create(SocialMediaTokenManageModel model)
 {
     if (ModelState.IsValid)
     {
         var response = _socialMediaTokenService.SaveSocialMediaToken(model);
         SetResponseMessage(response);
         if (response.Success)
         {
             var authorizeUrl = (string)response.Data;
             if (string.IsNullOrEmpty(authorizeUrl))
             {
                 return(RedirectToAction("Index"));
             }
             return(Redirect(authorizeUrl));
         }
     }
     return(View(model));
 }