/// <summary>
        /// Post status
        /// </summary>
        /// <param name="model"></param>
        /// <param name="network"></param>
        /// <returns></returns>
        public ResponseModel Post(SocialMessageModel model, SocialMediaEnums.SocialNetwork network)
        {
            try
            {
                var token = GetActiveTokenOfSocialMedia(network);

                if (token != null)
                {
                    object response       = null;
                    var    authorizeModel = new SocialMediaResponseModel
                    {
                        AppId             = token.AppId,
                        AppSecret         = token.AppSecret,
                        AccessToken       = token.AccessToken,
                        AccessTokenSecret = token.AccessTokenSecret
                    };

                    switch (network)
                    {
                    case SocialMediaEnums.SocialNetwork.Facebook:
                        response = SocialUtilities.PostFacebookStatus(authorizeModel, model);
                        break;

                    case SocialMediaEnums.SocialNetwork.Twitter:
                        response = SocialUtilities.PostTwitterStatus(authorizeModel, model);
                        break;

                    case SocialMediaEnums.SocialNetwork.LinkedIn:
                        response = SocialUtilities.PostLinkedInStatus(authorizeModel, model);
                        break;
                    }

                    var responseResult = string.Empty;
                    if (response != null)
                    {
                        responseResult = SerializeUtilities.Serialize(response);
                    }

                    return(new ResponseModel
                    {
                        Success = true,
                        Data = responseResult
                    });
                }

                return(new ResponseModel
                {
                    Success = false,
                    Message = T("SocialMediaToken_Message_ObjectNotFound")
                });
            }
            catch (Exception exception)
            {
                return(new ResponseModel(exception));
            }
        }
        /// <summary>
        /// Get active token by social media id
        /// </summary>
        /// <param name="socialNetwork"></param>
        /// <returns></returns>
        public SocialMediaToken GetActiveTokenOfSocialMedia(SocialMediaEnums.SocialNetwork socialNetwork)
        {
            var socialMediaToken = FetchFirst(token => token.SocialMediaId == (int)socialNetwork && token.IsDefault);

            if (socialMediaToken == null)
            {
                socialMediaToken = FetchFirst(s =>
                                              s.SocialMediaId == (int)socialNetwork &&
                                              s.Status == SocialMediaEnums.TokenStatus.Active);
            }

            return(socialMediaToken);
        }