Esempio n. 1
0
        public IHttpActionResult Create(Guid childId, Guid userId)
        {
            if (_GetActiveRequestId(childId) != 0)
            {
                return(Ok(new { isSuccess = false }));
            }

            var reqDate  = DateTime.Now;
            var deadline = reqDate.AddDays(7);
            var req      = new MeetupRequest
            {
                CreatedAt = reqDate,
                Deadline  = deadline,
                ChildId   = childId,
                Unread    = true
            };

            db.MeetupRequests.Add(req);
            var userObj      = db.AdpotionCandidates.Find(userId);
            var candidateObj = Models.ScriptExecutor.GetCandidateDetails(userObj.UserName);

            db.MeetupRequestItems.Add(new MeetupRequestItem
            {
                MeetupRequestId   = req.Id,
                PortalUserId      = userId,
                CreatedAt         = reqDate,
                CandidateFullName = candidateObj.ApplicantPerson.LastName + " " + candidateObj.ApplicantPerson.FirstName + "" + candidateObj.ApplicantPerson.MiddleName,
                CertificateDate   = candidateObj.CertificateDate
            });

            db.SaveChanges();

            return(Ok(new { isSuccess = true }));
        }
Esempio n. 2
0
        public Task <MeetupResponse <Venue[]> > Recommended(RecommendedVenuesRequest request)
        {
            if (!string.IsNullOrWhiteSpace(request?.Country) && request.Country.Length != 2)
            {
                throw new ArgumentOutOfRangeException(nameof(request), "Country must be a 2 character code");
            }

            return(Recommended(request ?? MeetupRequest.FieldsOnly("taglist")));
        }
Esempio n. 3
0
 private void MapPropsToRecord(Meetup record, MeetupRequest request)
 {
     record.Name              = request.Name;
     record.Date              = request.Date;
     record.Organizer         = request.Organizer;
     record.IsPrivate         = request.IsPrivate;
     record.Location.City     = request.City;
     record.Location.Street   = request.Street;
     record.Location.PostCode = request.PostalCode;
 }
Esempio n. 4
0
        private static void AddContext(HttpRequestMessage message, MeetupRequest request)
        {
            if (!string.IsNullOrWhiteSpace(request?.ContextEventId))
            {
                message.Headers.Add("X-Meta-Visit-Event", request.ContextEventId);
            }

            if (!string.IsNullOrWhiteSpace(request?.ContextGroupName))
            {
                message.Headers.Add("X-Meta-Visit", System.Net.WebUtility.UrlEncode(request.ContextGroupName));
            }
        }
Esempio n. 5
0
        internal static async Task <HttpResponseMessage> GetAsync(
            string requestUri,
            MeetupClientOptions options,
            MeetupRequest request = null)
        {
            var fullUri = $"{requestUri}{BuildQueryString(request?.AsDictionary(),options)}";
            var message = new HttpRequestMessage(HttpMethod.Get, fullUri);

            AddContext(message, request);

            var response = await options.Client.SendAsync(message);

            return(response);
        }
Esempio n. 6
0
        public async Task <ActionResult> Post([FromBody] MeetupRequest request)
        {
            var meetup = new Meetup
            {
                Location = new Localization(),
            };

            MapPropsToRecord(meetup, request);
            AddLectures(meetup, request?.Lectures);

            _meetupContex.Meetups.Add(meetup);
            await _meetupContex.SaveChangesAsync();

            return(Ok());
        }
Esempio n. 7
0
        public async Task <ActionResult> Put(int id, [FromBody] MeetupRequest request)
        {
            var meetup = await _meetupContex.Meetups
                         .Include(x => x.Location)
                         .Include(x => x.Lectures)
                         .SingleOrDefaultAsync(m => m.Id == id);

            if (meetup == null)
            {
                return(BadRequest());
            }

            MapPropsToRecord(meetup, request);
            RemoveLectures(meetup, request.Lectures);
            AddLectures(meetup, request.Lectures);

            await _meetupContex.SaveChangesAsync();

            return(Ok());
        }
Esempio n. 8
0
        internal static async Task <MeetupResponse <T> > GetWithRequestAsync <T>(string requestUri, MeetupClientOptions options, MeetupRequest request)
        {
            var response = await GetAsync(requestUri, options, request);

            return(await response.AsObject <T>(options));
        }
Esempio n. 9
0
 private Task <MeetupResponse <Venue[]> > Recommended(MeetupRequest request)
 {
     return(MeetupRequestMethods.GetWithRequestAsync <Venue[]>("/recommended/venues", _options, request));
 }
Esempio n. 10
0
 public Task <MeetupResponse <Venue[]> > Recommended()
 {
     return(Recommended(MeetupRequest.FieldsOnly("taglist")));
 }
Esempio n. 11
0
        public Task <MeetupResponse <Group> > Get(string groupName, string[] fields)
        {
            if (string.IsNullOrWhiteSpace(groupName))
            {
                throw new ArgumentNullException(nameof(groupName));
            }

            return(MeetupRequestMethods.GetWithRequestAsync <Group>($"/{groupName}", _options, MeetupRequest.FieldsOnly(fields)));
        }