Beispiel #1
0
        public SubmissionResponse PostUserDescription(string referenceId, UserDescription description, ExceptionlessConfiguration config, IJsonSerializer serializer)
        {
            string data = serializer.Serialize(description);

            _userDescriptionContainer[referenceId] = data;
            return(new SubmissionResponse(200));
        }
Beispiel #2
0
        public async Task <UserDescription> AddUserDescriptionAsync(AddUserDescriptionViewModel model,
                                                                    CancellationToken cancellationToken = default(CancellationToken))
        {
            // Get user profile.
            var profile = _dbContext.Users.FindAsync(model.Id, cancellationToken);

            if (profile == null)
            {
                throw new Exception();
            }

            // Add user description into database.
            var userDescription = new UserDescription();

            userDescription.UserId      = profile.Id;
            userDescription.Description = model.Description;

            // Add the description into database.
            userDescription = _dbContext.UserDescriptions.Add(userDescription);

            // Save changes into database.
            await _dbContext.SaveChangesAsync(cancellationToken);

            return(userDescription);
        }
        public async Task <IHttpActionResult> AddUserDescription([FromBody] AddUserDescriptionViewModel model)
        {
            if (model == null)
            {
                model = new AddUserDescriptionViewModel();
                Validate(model);
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            // Get user profile.
            var profile = _profileService.GetProfile(Request);

            // Add user description into database.
            var userDescription = new UserDescription();

            userDescription.UserId      = profile.Id;
            userDescription.Description = model.Description;

            // Add the description into database.
            _unitOfWork.UserDescriptions.Insert(userDescription);

            // Save changes into database.
            await _unitOfWork.CommitAsync();

            return(Ok(userDescription));
        }
Beispiel #4
0
        private void ShowUserDetail(UserDescription user)
        {
            SetDetailMode(false);

            this.labelDetailId.Text   = user.Id.ToString();
            this.labelDetailName.Text = user.Name.GetString();
        }
Beispiel #5
0
        public override int GetHashCode()
        {
            int hash = 1;

            if (HasAgentId)
            {
                hash ^= AgentId.GetHashCode();
            }
            if (HasUserDescription)
            {
                hash ^= UserDescription.GetHashCode();
            }
            if (HasProgram)
            {
                hash ^= Program.GetHashCode();
            }
            if (HasUserOptions)
            {
                hash ^= UserOptions.GetHashCode();
            }
            if (HasClubOptions)
            {
                hash ^= ClubOptions.GetHashCode();
            }
            hash ^= (int)typeCase_;
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }
Beispiel #6
0
        public void test_EnumerateUsers()
        {
            MQConnection con = null;

            try {
                con = connectToServer(address, null, null);

                addAllUsers(con);
                List <UserDescription> unames = new List <UserDescription>();
                ErrorCode ec = con.EnumerateUsers(unames);
                Assert.IsTrue(ec == ErrorCode.EC_NOERROR, "Couldn't enumerate users");

                for (int x = 0; x < TEST_USERS.Length; x++)
                {
                    bool found = false;
                    for (int y = 0; y < unames.Count; y++)
                    {
                        UserDescription ud = unames[y];
                        if (ud.Name.Equals(TEST_USERS[x]))
                        {
                            found = true;
                        }
                    }
                    Assert.IsTrue(found, "User not enumerated: " + TEST_USERS[0]);
                }
            } finally {
                if (con != null)
                {
                    con.Close();
                }
            }
        }
 public HomeGroupsViewModel(UserDescription _user, IEnumerable <GroupDescription> _groups,
                            List <KeyValuePair <bool, bool> > _valuePair)
 {
     user      = _user;
     groups    = _groups;
     valuePair = _valuePair;
 }
Beispiel #8
0
        private void buttonRemoveUserFromRole_Click(object sender, EventArgs e)
        {
            try
            {
                if (this.treeViewRoles.SelectedNode != null &&
                    this.treeViewRoles.SelectedNode.Tag is UserDescription &&
                    this.treeViewRoles.SelectedNode.Parent != null)
                {
                    UserDescription selectedUser = (UserDescription)this.treeViewRoles.SelectedNode.Tag;
                    RoleDescription parentRole   = (RoleDescription)this.treeViewRoles.SelectedNode.Parent.Tag;

                    DialogResult result = MessageBox.Show("Are you sure you wan't remove the user " + selectedUser.Name.GetString() + " from the role " + parentRole.Name.GetString() + "?", "Role un-assignment confirmation", MessageBoxButtons.YesNo);

                    if (result == DialogResult.Yes)
                    {
                        IGatewayService proxy = GetServiceProxy();
                        proxy.RemoveRoleFromUser(this.myId, parentRole.Id, selectedUser.Id);

                        buttonRefreshRolesAndUsers_Click(this, EventArgs.Empty);
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Error: " + ex.Message);
                Logger.LogError("Error updating sub-role user", ex);
            }
        }
        public SubmissionResponse PostUserDescription(string referenceId, UserDescription description, ExceptionlessConfiguration config, IJsonSerializer serializer)
        {
            var data = serializer.Serialize(description);

            HttpWebResponse response;

            try {
                var request = CreateHttpWebRequest(config, String.Format("events/by-ref/{0}/user-description", referenceId));
                response = request.PostJsonAsyncWithCompression(data).Result as HttpWebResponse;
            } catch (AggregateException aex) {
                var ex = aex.GetInnermostException() as WebException;
                if (ex != null)
                {
                    response = (HttpWebResponse)ex.Response;
                }
                else
                {
                    return(new SubmissionResponse(500, message: aex.GetMessage()));
                }
            } catch (Exception ex) {
                return(new SubmissionResponse(500, message: ex.Message));
            }

            return(new SubmissionResponse((int)response.StatusCode, response.IsSuccessful() ? null : response.GetResponseText()));
        }
Beispiel #10
0
        private void WriteBinaryDataArrayList(Peak1DArray peaks)
        {
            writer.WriteStartElement("binaryDataArrayList");
            WriteXmlAttribute("count", "2");

            UserDescription mzParams = new UserDescription("mzParams");

            mzParams
            .SetMzArray()
            .SetCompression(BinaryDataCompressionType.NoCompression)
            .SetBinaryDataType(peaks.MzDataType);

            double[] mzValues = peaks.Peaks.Select(x => x.Mz).ToArray();
            WriteBinaryDataArray(mzValues, peaks.MzDataType, mzParams);

            UserDescription intParams = new UserDescription("intParams");

            intParams
            .SetIntensityArray().NoUnit()
            .SetCompression(BinaryDataCompressionType.NoCompression)
            .SetBinaryDataType(peaks.IntensityDataType);

            double[] intValues = peaks.Peaks.Select(x => x.Intensity).ToArray();
            WriteBinaryDataArray(intValues, peaks.IntensityDataType, intParams);

            writer.WriteEndElement();
        }
Beispiel #11
0
        public SubmissionResponse PostUserDescription(string referenceId, UserDescription description, ExceptionlessConfiguration config, IJsonSerializer serializer)
        {
            var data = serializer.Serialize(description);

            HttpWebResponse response;

            try {
                var request = CreateHttpWebRequest(config, String.Format("events/by-ref/{0}/user-description", referenceId));
                response = request.PostJsonAsync(data).Result as HttpWebResponse;
            } catch (AggregateException aex) {
                var ex = aex.GetInnermostException() as WebException;
                if (ex != null)
                {
                    response = (HttpWebResponse)ex.Response;
                }
                else
                {
                    return(new SubmissionResponse(500, message: aex.GetMessage()));
                }
            } catch (Exception ex) {
                return(new SubmissionResponse(500, message: ex.Message));
            }

            int settingsVersion;

            if (Int32.TryParse(response.Headers[ExceptionlessHeaders.ConfigurationVersion], out settingsVersion))
            {
                SettingsManager.CheckVersion(settingsVersion, config);
            }

            return(new SubmissionResponse((int)response.StatusCode, GetResponseMessage(response)));
        }
Beispiel #12
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,Name,Email,Password,Birthday,University,Role")] UserDescription userDescription)
        {
            if (id != userDescription.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _db.Update(userDescription);
                    _db.Save();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!UserDescriptionExists(userDescription.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["University"] = new SelectList(_db.GetUniversities(), "Id", "Name", userDescription.University);

            return(View(userDescription));
        }
        /// <summary>
        /// <inheritdoc />
        /// </summary>
        /// <param name="model"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public virtual async Task <UserDescription> AddUserDescriptionAsync(AddUserDescriptionViewModel model,
                                                                            CancellationToken cancellationToken = default(CancellationToken))
        {
            if (model.UserId == null || model.UserId < 1)
            {
                throw new HttpException((int)HttpStatusCode.NotFound, HttpMessages.UserNotFound);
            }

            var users = _unitOfWork.Users.Search();

            users = users.Where(x => x.Id == model.UserId && x.Status == UserStatuses.Active);

            var user = await users.FirstOrDefaultAsync(cancellationToken);

            if (user == null)
            {
                throw new HttpException((int)HttpStatusCode.NotFound, HttpMessages.UserNotFound);
            }

            // Add user description into database.
            var userDescription = new UserDescription();

            userDescription.UserId      = model.UserId.Value;
            userDescription.Description = model.Description;

            // Add the description into database.
            _unitOfWork.UserDescriptions.Insert(userDescription);

            // Save changes into database.
            await _unitOfWork.CommitAsync();

            return(userDescription);
        }
        public void AddUserDescription(string userId, string description)
        {
            var userDescription = new UserDescription {
                UserID = userId, Description = description
            };

            _context.UserDescriptions.Add(userDescription);
        }
Beispiel #15
0
        /// <summary>
        /// Sets the user's description of the event.
        /// </summary>
        /// <param name="ev">The event.</param>
        /// <param name="description">The user's description.</param>
        public static void SetUserDescription(this Event ev, UserDescription description)
        {
            if (description == null || (String.IsNullOrWhiteSpace(description.EmailAddress) && String.IsNullOrWhiteSpace(description.Description)))
            {
                return;
            }

            ev.Data[Event.KnownDataKeys.UserDescription] = description;
        }
        public void PostUserDescription()
        {
            var container = AppBuilder.CreateContainer();

            using (WebApp.Start(Settings.Current.BaseURL, app => AppBuilder.BuildWithContainer(app, container, false))) {
                var repository = container.GetInstance <IEventRepository>();
                repository.RemoveAll();

                const string referenceId    = "fda94ff32921425ebb08b73df1d1d34c";
                const string badReferenceId = "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz";

                var statsCounter = container.GetInstance <IAppStatsClient>() as InMemoryAppStatsClient;
                Assert.NotNull(statsCounter);

                EnsureSampleData(container);

                var events = new List <Event> {
                    new Event {
                        Message = "Testing", ReferenceId = referenceId
                    }
                };
                var configuration = GetClient().Configuration;
                var serializer    = new DefaultJsonSerializer();

                var client      = new DefaultSubmissionClient();
                var description = new UserDescription {
                    EmailAddress = "*****@*****.**", Description = "Some description."
                };
                statsCounter.WaitForCounter(StatNames.EventsUserDescriptionErrors, work: () => {
                    var response = client.PostUserDescription(referenceId, description, configuration, serializer);
                    Assert.True(response.Success, response.Message);
                    Assert.Null(response.Message);
                });

                statsCounter.WaitForCounter(StatNames.EventsUserDescriptionProcessed, work: () => {
                    var response = client.PostEvents(events, configuration, serializer);
                    Assert.True(response.Success, response.Message);
                    Assert.Null(response.Message);
                });

                container.GetInstance <IElasticClient>().Refresh();
                var ev = repository.GetByReferenceId("537650f3b77efe23a47914f4", referenceId).FirstOrDefault();
                Assert.NotNull(ev);
                Assert.NotNull(ev.GetUserDescription());
                Assert.Equal(description.ToJson(), ev.GetUserDescription().ToJson());

                Assert.Equal(2, statsCounter.GetCount(StatNames.EventsUserDescriptionErrors));
                statsCounter.WaitForCounter(StatNames.EventsUserDescriptionErrors, work: () => {
                    var response = client.PostUserDescription(badReferenceId, description, configuration, serializer);
                    Assert.True(response.Success, response.Message);
                    Assert.Null(response.Message);
                });

                Assert.Equal(2, statsCounter.GetCount(StatNames.EventsUserDescriptionErrors));
            }
        }
Beispiel #17
0
        public GroupModel FormGroupModel(int groupId, string email)
        {
            GroupDescription group = _groupRepo.GetElement(groupId); // Информация о текущей группе

            if (group == null)
            {
                return(null);
            }

            UserDescription user = _userRepo.GetElementByEmail(email);
            var             part = _participationRepo.GetElement(user.Id, groupId);
            string          role = null;

            if (part == null && !group.Private)
            {
                _participationRepo.Create(new Participation {
                    UserId = user.Id, GroupId = groupId, Role = 0
                });
                _participationRepo.Save();
                role = _roleRepo.GetElement(0).Name;
            }
            else
            {
                role = _roleRepo.GetElement(part.Role).Name;
            }

            List <RequestList>     requests        = _requestListRepo.GetElementsForGroup(groupId); // Список заявок в текущую группу
            List <UserDescription> requested_users = new List <UserDescription>();                  // Пользователи подавшие заявку

            for (int i = 0; i < requests.Count(); i++)
            {
                requested_users.Add(_userRepo.GetElement(requests[i].UserId));
            }

            List <Participation>   users_ids = _participationRepo.GetUsersForGroup(groupId); // список id участников текущей группы
            List <UserDescription> users     = new List <UserDescription>();                 // участники текущей группы

            for (int i = 0; i < users_ids.Count(); i++)
            {
                users.Add(_userRepo.GetElement(users_ids[i].UserId));
                users[i].Role = _roleRepo.GetElement(_participationRepo.GetElement(users[i].Id, groupId).Role).Name;
            }
            List <Files> files = _filesRepo.GetFilesForGroup(groupId);  // загруженные материалы текущей группы

            return(new GroupModel
            {
                Id = group.Id,
                Name = group.Name,
                requests = requested_users,
                members = users,
                files = files,
                Private = group.Private,
                Role = role
            });
        }
Beispiel #18
0
        public void AddUserDesc(int id)
        {
            var desc = new UserDescription
            {
                Description = "",
                UserId      = id
            };

            _context.UserDescription.Add(desc);
            _context.SaveChanges();
        }
Beispiel #19
0
        private UserDescription ConvertUser(User user, Guid userId)
        {
            User child = this.storage.GetUser(userId);

            UserDescription desc = new UserDescription();

            desc.Id   = child.Id;
            desc.Name = ReencryptToUser(user, child.Name);

            return(desc);
        }
        /// <summary>
        /// Sets the user's description of the event.
        /// </summary>
        /// <param name="ev">The event.</param>
        /// <param name="description">The user's description.</param>
        public static void SetUserDescription(this Event ev, UserDescription description)
        {
            if (description == null || (String.IsNullOrWhiteSpace(description.EmailAddress) && String.IsNullOrWhiteSpace(description.Description)))
            {
                return;
            }

            // TODO: Should we be merging existing user descriptions?

            ev.Data[Event.KnownDataKeys.UserDescription] = description;
        }
Beispiel #21
0
 public async Task <IActionResult> Create([Bind("Id,Name,Email,Password,Birthday,University,Role")] UserDescription userDescription)
 {
     if (ModelState.IsValid)
     {
         _db.Create(userDescription);
         _db.Save();
         return(RedirectToAction(nameof(Index)));
     }
     ViewData["University"] = new SelectList(_db.GetUniversities(), "Id", "Name", userDescription.University);
     return(View(userDescription));
 }
Beispiel #22
0
        public override int GetHashCode()
        {
            int result = 1;

            result = (result * 397) ^ Category.GetHashCode();
            result = (result * 397) ^ CreatedOn.GetHashCode();
            result = (result * 397) ^ Id.GetHashCode();
            result = (result * 397) ^ (Information != null ? Information.GetHashCode() : 0);
            result = (result * 397) ^ (UserDescription != null ? UserDescription.GetHashCode() : 0);
            result = (result * 397) ^ (Username != null ? Username.GetHashCode() : 0);
            return(result);
        }
Beispiel #23
0
        public SubmissionResponse PostUserDescription(string referenceId, UserDescription description, ExceptionlessConfiguration config, IJsonSerializer serializer)
        {
            var ev = Events.FirstOrDefault(e => e.ReferenceId == referenceId);

            if (ev == null)
            {
                return(new SubmissionResponse(404, "Not Found"));
            }

            ev.Data[Event.KnownDataKeys.UserDescription] = description;

            return(new SubmissionResponse(200, "OK"));
        }
        public ClaimsPrincipal Authenticate(string email)
        {
            UserDescription user   = _userRepo.GetElementByEmail(email);
            var             claims = new List <Claim>
            {
                new Claim(ClaimsIdentity.DefaultNameClaimType, user.Email),
                new Claim(ClaimsIdentity.DefaultRoleClaimType, user.Role)
            };

            ClaimsIdentity id = new ClaimsIdentity(claims, "ApplicationCookie", ClaimsIdentity.DefaultNameClaimType, ClaimsIdentity.DefaultRoleClaimType);

            return(new ClaimsPrincipal(id));
        }
        public bool Login(string email, string password)
        {
            UserDescription user = _userRepo.GetAll().FirstOrDefault(
                u => email.ToLower() == email.ToLower() && u.Password == password);

            if (user != null)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
        public async Task <IHttpActionResult> SetUserDescription(string referenceId, UserDescription description, string projectId = null)
        {
            _statsClient.Counter(StatNames.EventsUserDescriptionSubmitted);

            if (String.IsNullOrEmpty(referenceId))
            {
                return(NotFound());
            }

            if (description == null)
            {
                return(BadRequest("Description must be specified."));
            }

            var result = _userDescriptionValidator.Validate(description);

            if (!result.IsValid)
            {
                return(BadRequest(result.Errors.ToErrorMessage()));
            }

            if (projectId == null)
            {
                projectId = User.GetDefaultProjectId();
            }

            // must have a project id
            if (String.IsNullOrEmpty(projectId))
            {
                return(BadRequest("No project id specified and no default project was found."));
            }

            var project = _projectRepository.GetById(projectId, true);

            if (project == null || !User.GetOrganizationIds().ToList().Contains(project.OrganizationId))
            {
                return(NotFound());
            }

            var eventUserDescription = Mapper.Map <UserDescription, EventUserDescription>(description);

            eventUserDescription.ProjectId   = projectId;
            eventUserDescription.ReferenceId = referenceId;

            await _eventUserDescriptionQueue.EnqueueAsync(eventUserDescription);

            _statsClient.Counter(StatNames.EventsUserDescriptionQueued);

            return(StatusCode(HttpStatusCode.Accepted));
        }
        public async Task <ActionResult> Create(FormCreateViewModel model)
        {
            User user = new User();

            user.ID        = model.FirstName + new Random().Next(999999999).ToString() + model.LastName;
            user.FirstName = model.FirstName;
            user.LastName  = model.LastName;
            user.Email     = model.Email;
            user.Gender    = model.Gender;
            context.Users.Add(user);

            var         countryId   = context.Countries.Where(m => m.Name == model.Country).Select(m => m.ID).FirstOrDefault();
            UserCountry userCountry = new UserCountry();

            userCountry.UserID    = user.ID;
            userCountry.CountryID = countryId;
            context.UserCountries.Add(userCountry);

            UserDescription userDescription = new UserDescription();

            userDescription.ID          = user.ID + countryId;
            userDescription.UserID      = user.ID;
            userDescription.Description = model.Description;
            context.UserDescriptions.Add(userDescription);

            foreach (var course in model.Courses)
            {
                UserCourse userCourse = new UserCourse();
                if (course.Checked == true)
                {
                    userCourse.UserID   = user.ID;
                    userCourse.CourseID = course.ID;
                    userCourse.Checked  = true;
                    context.UserCourses.Add(userCourse);
                }
            }

            await context.SaveChangesAsync();

            return(RedirectToAction("Index", "FormExample"));
        }
Beispiel #28
0
        public SubmissionResponse PostUserDescription(string referenceId, UserDescription description, ExceptionlessConfiguration config, IJsonSerializer serializer)
        {
            if (!config.IsValid)
            {
                return(SubmissionResponse.InvalidClientConfig500);
            }

            string data = serializer.Serialize(description);
            string url  = $"{GetServiceEndPoint(config)}/events/by-ref/{referenceId}/user-description";

            HttpResponseMessage response;

            try {
                HttpContent content = new StringContent(data, Encoding.UTF8, "application/json");

                // don't compress data smaller than 4kb
                if (data.Length > 1024 * 4)
                {
                    content = new GzipContent(content);
                }

                _client.Value.AddAuthorizationHeader(config.ApiKey);
                response = _client.Value.PostAsync(url, content).ConfigureAwait(false).GetAwaiter().GetResult();
            } catch (Exception ex) {
                return(new SubmissionResponse(500, exception: ex));
            }

            if (Int32.TryParse(GetSettingsVersionHeader(response.Headers), out int settingsVersion))
            {
                SettingsManager.CheckVersion(settingsVersion, config);
            }

            var message = GetResponseMessage(response);

            if ((int)response.StatusCode == 200 && "OK".Equals(message, StringComparison.OrdinalIgnoreCase))
            {
                return(SubmissionResponse.Ok200);
            }

            return(new SubmissionResponse((int)response.StatusCode, message));
        }
        public async Task <IHttpActionResult> LegacyPatch(string id, Delta <UpdateEvent> changes)
        {
            if (changes == null)
            {
                return(Ok());
            }

            if (changes.UnknownProperties.ContainsKey("UserEmail"))
            {
                changes.TrySetPropertyValue("EmailAddress", changes.UnknownProperties["UserEmail"]);
            }
            if (changes.UnknownProperties.ContainsKey("UserDescription"))
            {
                changes.TrySetPropertyValue("Description", changes.UnknownProperties["UserDescription"]);
            }

            var userDescription = new UserDescription();

            changes.Patch(userDescription);

            return(await SetUserDescription(id, userDescription));
        }
        private void ProcessUserDescription(EventUserDescription description)
        {
            var ev = _eventRepository.GetByReferenceId(description.ProjectId, description.ReferenceId).FirstOrDefault();

            if (ev == null)
            {
                throw new DocumentNotFoundException(description.ReferenceId);
            }

            var ud = new UserDescription {
                EmailAddress = description.EmailAddress,
                Description  = description.Description
            };

            if (description.Data.Count > 0)
            {
                ev.Data.AddRange(description.Data);
            }

            ev.SetUserDescription(ud);

            _eventRepository.Save(ev);
        }
Beispiel #31
0
 public Levels(UserDescription user, List<Levels> friends)
 {
     this.user = user;
     this.friends = friends;
 }