/// <summary>
        /// Активировать номер телефона пользователя
        /// </summary>
        /// <param name="user">Пользователь, номер которого нужно активировать</param>
        /// <param name="sessionKey">ключ текущей сессии</param>
        /// <param name="smsPassword">СМС-пароль</param>
        /// <returns></returns>
        public XElement ActivateUserPhone(UserInfo user, string sessionKey, string smsPassword)
        {
            var request = ApiHelpers.BuildRequest(sessionKey, UserInfo.ToXElement(user), new XElement("smsPassword", smsPassword));
            var result  = WebHostCache.Current.GetResponse <XElement>(@"api\security\ActivateUserPhone", request);

            return(result);
        }
        /// <summary>
        /// Активировать email пользователя
        /// </summary>
        /// <param name="user">Пользователь, email которого нужно активировать</param>
        /// <param name="sessionKey">Ключ текущей сессии</param>
        /// <returns>true - если пользователь активирован успешно, иначе - false</returns>
        public bool ActivateUserEmail(UserInfo user, string sessionKey)
        {
            var request = ApiHelpers.BuildRequest(sessionKey, UserInfo.ToXElement(user));
            var result  = WebHostCache.Current.GetResponse <XElement>(@"api\Security\ActivateUserEmail", request);

            return(result.Element("Rc").getValue(DEFAULT_RC) == 0);
        }
        /// <summary>
        /// Добавить в систему нового пользователя
        /// </summary>
        /// <param name="user">Добавляемый пользователь</param>
        /// <param name="sessionKey">Ключ текущей сессии</param>
        /// <returns>Добавленный пользователь</returns>
        public UserInfo AddUser(UserInfo user, string sessionKey)
        {
            var request = ApiHelpers.BuildRequest(sessionKey, UserInfo.ToXElement(user));
            var result  = WebHostCache.Current.GetResponse <XElement>(@"api\security\AddUser", request);

            user = UserInfo.FromXElement(result.Element("UserInfo"));

            return(user);
        }
 /// <summary>
 /// Обновить метку последней активности пользователя
 /// </summary>
 /// <param name="userId">ID пользователя</param>
 /// <param name="sessionKey">Ключ текущей сессии</param>
 public void UpdateUserLastActivity(int userId, string sessionKey)
 {
     var request = ApiHelpers.BuildRequest(sessionKey, new XElement("userId", userId));
     var result  = WebHostCache.Current.GetResponse <XElement>(@"api\security\UpdateUserLastActivity", request);
 }
 /// <summary>
 /// Обновить сессию анонимного пользователя
 /// </summary>
 /// <param name="sessionKey">Ключ сессии</param>
 public void UpdateAnonymousSession(string sessionKey)
 {
     var request = ApiHelpers.BuildRequest(sessionKey);
     var result  = WebHostCache.Current.GetResponse <XElement>(@"api/security/UpdateAnonymousSession", request);
 }