public async Task<IActionResult> Post(ContactRequest request)
        {
            await
                _emailService.Send("*****@*****.**", "Message from vaerenberg.com",
                    JsonConvert.SerializeObject(request));

            return Ok();
        }
示例#2
0
        public void Send_InvalidRequest_PopulatesError()
        {
            var controller = new ContactController();
            PrepareController(controller);

            var invalidRequest = new ContactRequest();
            controller.Index(invalidRequest);

            Assert.NotNull(controller.PropertyBag["error"]);
        }
示例#3
0
        public void Send_InvalidRequest_EmailIsNotSent()
        {
            var controller = new ContactController();
            PrepareController(controller);

            var invalidRequest = new ContactRequest();
            controller.Index(invalidRequest);

            Assert.Equal(0, ((StubEngineContext)Context).MessagesSent.Count);
        }
示例#4
0
        public void Contact_WithoutEmail_IsInvalid()
        {
            // arrange 
            var request = new ContactRequest { Name = "a", Message = "aaa" };

            // act
            var results = ValidateModel(request);

            // assert
            Assert.Equal("Email", results[0].MemberNames.First());
        }
示例#5
0
        public async Task Contact_WithValidRequest_SendsMessageThroughEmailService()
        {
            // arrange 
            var request = new ContactRequest { Name = "a", Email = "*****@*****.**", Message = "aaa" };
            var emailService = new FakeEmailService();
            var sut = new ContactController(emailService);

            // act
            await sut.Post(request);

            // assert
            Assert.Equal(1, emailService.SendCallCount);
        }
示例#6
0
        public void Contact_WithNameTooLong_IsInvalid()
        {
            // arrange 
            var request = new ContactRequest
            {
                Name = new string('a', 1000),
                Email = "*****@*****.**",
                Message = "aaa"
            };

            // act
            var results = ValidateModel(request);

            // assert
            Assert.Equal("Name", results[0].MemberNames.First());
        }
 public static EmailMessage CreateEmailMessageToNeal(ContactRequest contactRequest)
 {
     return(new EmailMessage
     {
         FromAddresses = new List <EmailAddress> {
             new EmailAddress {
                 Address = "*****@*****.**", Name = "Neal Thomas"
             }
         },
         ToAddresses = new List <EmailAddress> {
             new EmailAddress {
                 Address = "*****@*****.**", Name = "Neal Thomas"
             }
         },
         Subject = "Request Received",
         BodyHtml = GetEmailTemplate(contactRequest)
     });
 }
示例#8
0
        public async Task <bool> SendContactNotification(ContactRequest request)
        {
            var contactEmail = _config["AppSettings:ContactEmail"];
            var to           = new List <string> {
                contactEmail
            };

            var client = new TransactionalEmailClient(_config);

            await client.SendEmail(
                to,
                "Contact Form: " + request.subject,
                request.message,
                "",
                "Contact");

            return(true);
        }
        public IActionResult Put(int id, ContactRequest contactRequest)
        {
            var existingContactRequest = _contactRequestRepository.Get(id);

            if (existingContactRequest == null)
            {
                return(NotFound());
            }

            existingContactRequest.FirstName = contactRequest.FirstName;
            existingContactRequest.LastName  = contactRequest.LastName;
            existingContactRequest.Mail      = contactRequest.Mail;
            existingContactRequest.Text      = contactRequest.Text;

            _contactRequestRepository.Update(existingContactRequest);

            return(NoContent());
        }
示例#10
0
        public void BlockUser(User blocker, User blocked)
        {
            // Validate
            blocker.Should().NotBeNull();
            blocked.Should().NotBeNull();

            if (!IsUserBlocked(blocked, blocker))
            {
                DateTime now = DateTime.UtcNow;

                if (_contactService.IsUserContact(blocker, blocked))
                {
                    // The users are contacts so delete the connection
                    Contact contact = _contactService.GetUserContact(blocker, blocked);
                    _contactService.DeleteContact(contact);
                }
                else
                {
                    // The users are not contacts but there may be an active request, so delete if necessary
                    if (_contactRequestService.HasActiveContactRequest(blocker, blocked))
                    {
                        ContactRequest contactRequest = _contactRequestService.GetContactRequestsFromUserToUser(blocker, blocked).Where(r => r.IsActive()).First();
                        _contactRequestService.CancelContactRequest(blocker, contactRequest);
                    }
                    else if (_contactRequestService.HasActiveContactRequest(blocked, blocker))
                    {
                        ContactRequest contactRequest = _contactRequestService.GetContactRequestsFromUserToUser(blocked, blocker).Where(r => r.IsActive()).First();
                        _contactRequestService.CancelContactRequest(blocker, contactRequest);
                    }
                }

                // Block and save
                _context.BlockedUsers.Add(new BlockedUser
                {
                    BlockerUID      = blocker.Id,
                    BlockedUID      = blocked.Id,
                    CreatedUID      = blocker.Id,
                    CreatedDateUtc  = now,
                    ModifiedUID     = blocker.Id,
                    ModifiedDateUtc = now
                });
                _context.SaveChanges();
            }
        }
示例#11
0
        public async Task ReturnCreated()
        {
            // Arrange
            var contact = new ContactRequest("John", "Doe");

            // Act
            var response = await Client.PostAsJsonAsync("/contacts", contact);

            // Assert
            response.StatusCode.ShouldBe(HttpStatusCode.Created);
            response.Content.Headers.ContentType.MediaType.ShouldBe("application/json");

            var contactResponse = await response.Content.ReadAsJsonAsync <ContactResponse>();

            response.Headers.Location.ToString().ShouldBe($"/contacts/{contactResponse.Id}");
            contactResponse.Id.ShouldNotBe(0);
            contactResponse.FirstName.ShouldBe(contact.FirstName);
            contactResponse.Surname.ShouldBe(contact.Surname);
        }
            public async Task <Response> Handle(Request request, CancellationToken cancellationToken)
            {
                var contactRequest = await _context.ContactRequests.FindAsync(request.ContactRequest.ContactRequestId);

                if (contactRequest == null)
                {
                    contactRequest = new ContactRequest();
                    _context.ContactRequests.Add(contactRequest);
                }

                contactRequest.Name = request.ContactRequest.Name;

                await _context.SaveChangesAsync(cancellationToken);

                return(new Response()
                {
                    ContactRequestId = contactRequest.ContactRequestId
                });
            }
        public async Task <IActionResult> Add([FromBody] ContactRequest request)
        {
            if (!ModelState.IsValid)
            {
                return(Ok(ModelState));
            }

            var response = new BaseResponse <Guid>();

            if (!await GoogleRecaptchaHelper.IsReCaptchaPassedAsync(request.CaptchaToken, "6Ldt7KEUAAAAAL_gnq4ORX4NrKDK3qegm1TSyBAg"))
            {
                response.Message = "Lütfen robot olmadığınızı doğrulayın.";
                return(Ok(response));
            }

            var item = new Contact
            {
                FullName    = request.Name,
                Email       = request.Email,
                PhoneNumber = request.PhoneNumber,
                Message     = request.Message
            };

            contactRepo.Add(item);
            response.Message = "Kayıt başarıyla eklenmiştir.";
            response.Data    = item.Id;

            var MailBody = "HepsiSef bize ulaşın" + "\n " + "isim:" + " " + item.FullName + "\n" + "email:" + " " + item.Email + "\n" + "telefon no:" + " " + item.PhoneNumber + "\n" + "mesaj:" + " " + item.Message;

            List <AdminMailMM> Admins = new List <AdminMailMM>();

            Admins = userRepo.GetBy(x => x.Role == Role.Admin).Select(x => new AdminMailMM
            {
                Email = x.Email
            }).ToList();

            foreach (var mail in Admins)
            {
                MailManager.Send(MailBody, mail.Email);
            }

            return(Ok(response));
        }
示例#14
0
        public void InformAboutContactRequest(ContactRequest contactRequest, string url)
        {
            StringBuilder sb = new StringBuilder();

            sb
            .AppendLine("Hallo")
            .AppendLine()
            .AppendLine($"Auf pff19.ch ist eine neue Kontaktanfrage eingegangen von: {contactRequest.FirstName} {contactRequest.LastName} ({contactRequest.Mail})")
            .AppendLine($"Link zur Anfrage: {url}")
            .AppendLine()
            .AppendLine("********************************************************************")
            .AppendLine()
            .AppendLine(contactRequest.Text)
            .AppendLine()
            .AppendLine("********************************************************************")
            .AppendLine()
            .AppendLine("Dieses Email wurde automatisch generiert, bitte antworte nicht darauf.");
            SendMail(_configuration["Mail:ContactRequestReceiver"], "Pff19: Neue Kontaktanfrage", sb.ToString());
        }
        // PUT: api/Contact/5
        public IHttpActionResult PutContact(int id, [FromBody] ContactRequest contact)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            int result = _repo.EditContact(id, contact);

            if (result == 0)
            {
                return(NotFound());
            }
            else if (result == -1)
            {
                return(BadRequest("Duplicate data found."));
            }
            return(StatusCode(HttpStatusCode.NoContent));
        }
示例#16
0
        public async Task POST_Contact_Success()
        {
            string externalIdentifier = "postContactSuccess01";

            ContactTestData testData = new ContactTestData
            {
                ExternalIdentifier = externalIdentifier,
                AccountMasterExtId = "accountMasterExtId01"
            };

            //create an accountmaster first
            AccountMasterRequest accountMasterRequest = new AccountMasterRequest
            {
                Identifier    = testData.AccountMasterExtId,
                CreateAccount = true,
                IsWebEnabled  = true,
                CreatedBy     = "post request 01",
                Name          = "temporal AM"
            };
            var accountMasterResponse = await Client.AccountMasters.Create(accountMasterRequest);

            ContactRequest request = new ContactRequest
            {
                CreatedBy          = "post request 01",
                ExternalIdentifier = externalIdentifier,
                AccountMasterExtId = accountMasterRequest.Identifier,
                ContactEmail       = "*****@*****.**",
                FirstName          = "john",
                LastName           = "doe",
                PhoneNumber        = "1234567890"
            };

            HttpResponseExtended <ContactResponse> response = await Client.Contacts.Create(request);

            //validations
            Assert.IsNotNull(response, "Response object should not be null");
            Assert.AreEqual(200, response.StatusCode);
            Assert.IsNotNull(response.Result, "Result object should not be null");

            //test scenario clean up
            await TestScenarioCleanUp(testData);
        }
示例#17
0
        public async Task <IActionResult> Edit(short id, [Bind("RequestId,RequestDate,RequestText,Id")] ContactRequest contactRequest)
        {
            try
            {
                if (id != contactRequest.RequestId)
                {
                    return(NotFound());
                }

                // Préparation de l'appel à l'API
                string accessToken = await HttpContext.GetTokenAsync("access_token");

                HttpClient client = new HttpClient();
                client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);

                string content = await client.GetStringAsync(_configuration["URLAPI"] + $"api/ContactRequests/{id}");

                ContactRequest oldContactRequest = JsonConvert.DeserializeObject <ContactRequest>(content);

                if (oldContactRequest == null)
                {
                    return(NotFound());
                }

                contactRequest.Id          = oldContactRequest.Id;
                contactRequest.RequestDate = oldContactRequest.RequestDate;

                // Préparation de la requête update à l'API
                StringContent       httpContent = new StringContent(contactRequest.ToJson(), Encoding.UTF8, "application/json");
                HttpResponseMessage response    = await client.PutAsync(_configuration["URLAPI"] + $"api/UserContactRequests/{id}", httpContent);

                if (response.StatusCode != HttpStatusCode.NoContent)
                {
                    return(BadRequest());
                }
                return(RedirectToAction(nameof(Index)));
            }
            catch (HttpRequestException e)
            {
                return(Unauthorized());
            }
        }
示例#18
0
        // SEARCH

        public static List <ContactRequest> Search(ContactRequestSearchRequest model, out int totalRows)
        {
            List <ContactRequest> list = null;
            int r = 0;

            DataProvider.ExecuteCmd(GetConnection, "dbo.ContactRequest_Search"
                                    , inputParamMapper : delegate(SqlParameterCollection paramCollection)
            {
                paramCollection.AddWithValue("@SearchStr", model.SearchString);
                paramCollection.AddWithValue("@CurrentPage", model.CurrentPage);
                paramCollection.AddWithValue("@ItemsPerPage", model.ItemsPerPage);
            }
                                    , map : delegate(IDataReader reader, short set)
            {
                switch (set)
                {
                case 0:                    //first result set
                    ContactRequest p  = new ContactRequest();
                    int startingIndex = 0; //startingOrdinal

                    p.Id      = reader.GetInt32(startingIndex++);
                    p.Name    = reader.GetSafeString(startingIndex++);         //extension method
                    p.Email   = reader.GetSafeString(startingIndex++);
                    p.Message = reader.GetSafeString(startingIndex++);
                    p.Notes   = reader.GetSafeString(startingIndex++);
                    r         = reader.GetSafeInt32(startingIndex++);


                    if (list == null)
                    {
                        list = new List <ContactRequest>();
                    }

                    list.Add(p);
                    break;
                }
            }
                                    );
            totalRows = r;

            return(list);
        }
        public void Insert(ContactRequest request)
        {
            using (var cn = new SqlConnection())
            {
                cn.ConnectionString = Settings.GetConnectionString();

                var parameters = new DynamicParameters();
                parameters.Add("@ContactRequestId", dbType: DbType.Int32, direction: ParameterDirection.Output);
                parameters.Add("@Name", request.Name);
                parameters.Add("@Email", request.Email);
                parameters.Add("@Phone", request.Phone);
                parameters.Add("@Message", request.Message);

                cn.Execute("InsertContactRequest",
                           parameters,
                           commandType: CommandType.StoredProcedure);

                request.ContactRequestId = parameters.Get <int>("@ContactRequestId");
            }
        }
        // POST: api/Contact
        public IHttpActionResult PostContact([FromBody] ContactRequest contact)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            int contactId = _repo.AddContact(contact);

            if (contactId == 0)
            {
                return(BadRequest("Recored not created"));
            }
            else if (contactId == -1)
            {
                return(BadRequest("Duplicate data found."));
            }

            return(CreatedAtRoute("DefaultApi", new { id = contactId }, contact));
        }
        public ActionResult GetByID(int entryid)
        {
            IDbConnection dbConn = new OrmliteConnection().openConn();

            try
            {
                var data      = ContactRequest.GetById(entryid, null, false);
                var ref_Roles = CustomModel.GetActiveStatus();
                return(Json(new
                {
                    success = true,
                    data = data
                }));
            }
            catch (Exception e)
            {
                return(Json(new { success = false, message = e.Message }));
            }
            finally { dbConn.Close(); }
        }
示例#22
0
        public async Task ReturnOkGivenUpdatedFirstNameAndSurname()
        {
            // Arrange
            var contact = contactService.Add("John", "Doe");

            var contactToUpdate = new ContactRequest("Dane", "Kane");

            // Act
            var response = await Client.PutAsJsonAsync($"contacts/{contact.Id}", contactToUpdate);

            // Assert
            response.StatusCode.ShouldBe(HttpStatusCode.OK);
            response.Content.Headers.ContentType.MediaType.ShouldBe("application/json");

            var contactResponse = await response.Content.ReadAsJsonAsync <ContactResponse>();

            contactResponse.Id.ShouldBe(contact.Id);
            contactResponse.FirstName.ShouldBe(contactResponse.FirstName);
            contactResponse.Surname.ShouldBe(contactResponse.Surname);
        }
        public void Update(ContactRequest value)
        {
            using (var scope = _dbContextScopeFactory.Create())
            {
                var dbContext = scope.DbContexts
                                .Get <ApplicationDbContext>();

                var existed = dbContext.Set <ContactRequest>().SingleOrDefault(t => t.ID == value.ID);

                existed.CreatedDate = value.CreatedDate;
                existed.Company     = value.Company;
                existed.Email       = value.Email;
                existed.FirstName   = value.FirstName;
                existed.LastName    = value.LastName;
                existed.Message     = value.Message;
                existed.Phone       = value.Phone;

                scope.SaveChanges();
            }
        }
示例#24
0
        public void SendEmail(ContactRequest contactRequest)
        {
            ProcessStartInfo start = new ProcessStartInfo();

            start.FileName = "C:/Python39/python.exe";
            string cmd  = "D:/Clients/FF/Website/firebirdfrankiefoundrywebsite/FirebirdFrankieFoundryAPI/Services/EmailSender.py";
            string args = $"\"{contactRequest.Name}\" \"{contactRequest.Category}\" \"{contactRequest.Email}\" \"{contactRequest.PhoneNumber}\" \"{contactRequest.CompanyName}\"  \"{contactRequest.Message}\"";

            start.Arguments              = string.Format("{0} {1}", cmd, args);
            start.UseShellExecute        = false;
            start.RedirectStandardOutput = true;
            using (Process process = Process.Start(start))
            {
                using (StreamReader reader = process.StandardOutput)
                {
                    string result = reader.ReadToEnd();
                    Console.Write(result);
                }
            }
        }
        public void SortAndLimit()
        {
            using (var client = TestHelper.ClientGet())
            {
                var contactRequest = new ContactRequest
                {
                    // Because of upstream issue CRM-15905, you cannot search contacts on 'id'.
                    // A workaround is writing 'contact_a.id'.
                    // https://issues.civicrm.org/jira/browse/CRM-15905
                    ApiOptions = new ApiOptions {
                        Sort = "contact_a.id DESC", Limit = 2
                    }
                };

                var result = client.ContactGet(TestHelper.ApiKey, TestHelper.SiteKey, contactRequest);

                Assert.AreEqual(0, result.IsError);
                Assert.AreEqual(2, result.Count);
                Assert.IsTrue(result.Values.First().Id > result.Values.Last().Id);
            }
        }
示例#26
0
        public void ReturnOkGivenUpdatedFirstNameAndSurname()
        {
            // Arrange
            var contactRequest = new ContactRequest("Dan", "Kane");

            contactService
            .Setup(mock => mock.Update(42, contactRequest.FirstName, contactRequest.Surname))
            .Returns(new Contact(42, contactRequest.FirstName, contactRequest.Surname));

            // Act
            var result = controller.Put(42, contactRequest);

            // Assert
            var okResult = result.ShouldBeOfType <OkObjectResult>();

            var contactResponse = okResult.Value.ShouldBeOfType <ContactResponse>();

            contactResponse.Id.ShouldBe(42);
            contactResponse.FirstName.ShouldBe(contactResponse.FirstName);
            contactResponse.Surname.ShouldBe(contactResponse.Surname);
        }
示例#27
0
        private ContactResponse Update(string uid, ContactModel model)
        {
            ContactResponse Contact = new ContactResponse();
            string          url     = string.Format(GetUrl(UrlType.Contact, UrlSubType.ContactById), uid);
            ContactRequest  request = new ContactRequest()
            {
                Properties = model.ToProperties()
            };

            Synergy.Common.Request.WebClient client = new Synergy.Common.Request.WebClient();
            HttpWebResponse response = client.Post(JsonConvert.SerializeObject(request), url, AuthorizationHeader.GetAuthorizationToken(_AccessToken.Accesstoken), EnumUtilities.GetDescriptionFromEnumValue(ContentTypes.JSON));

            if (response.StatusCode == HttpStatusCode.OK)
            {
                var          responseStream = response.GetResponseStream();
                StreamReader streamReader   = new StreamReader(responseStream);
                string       rawResponse    = streamReader.ReadToEnd();
                Contact = JsonConvert.DeserializeObject <ContactResponse>(rawResponse);
            }
            return(Contact);
        }
        public async Task <IActionResult> UpdateContact(int id, [FromBody] ContactRequest request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var contact = await _contactRepository.Get(id);

            if (contact == null)
            {
                return(NotFound());
            }

            _mapper.Map <ContactRequest, Contact>(request, contact);
            await _unitOfWork.Complete();

            var result = _mapper.Map <Contact, ContactResponse>(contact);

            return(Ok(result));
        }
示例#29
0
        public async Task <bool> AddContactRequest(ProductListingData productListing, Users user)
        {
            try
            {
                ContactRequest contactRequest = await(from req in _ApnaAaharContext.ContactRequest where req.ProductListingId == productListing.ProductListingId && req.BuyerId == user.UserId select req).FirstOrDefaultAsync();
                if (contactRequest == null)
                {
                    await _ApnaAaharContext.ContactRequest.AddAsync(new ContactRequest()
                    {
                        BuyerId = user.UserId, ProductListingId = productListing.ProductListingId
                    });
                }
            }
            catch (Exception)
            {
                throw new DataNotSavedException();
            }
            int results = await _ApnaAaharContext.SaveChangesAsync();

            return((results > 0) ? true : false);
        }
示例#30
0
        public ActionResult Create(ContactRequest item)
        {
            IDbConnection db = new OrmliteConnection().openConn();

            try
            {
                item.entryname = item.entryname ?? "";
                item.entrycode = item.entrycode ?? "";
                item.address   = item.address ?? "";
                //if (string.IsNullOrEmpty(item.entryname) || string.IsNullOrEmpty(item.entrycode)) return Json(new { success = false, message = tw_Lang.Common_ActionResult_MissingInfo });
                var isExist = ContactRequest.GetById(item.entryid, null, false);

                //Validate

                //insert / update
                if (item.entryid == 0)
                {
                    //insert
                    item.createdat = DateTime.Now;
                    item.createdby = currentUser.entryid;
                    item.updatedat = DateTime.Now;
                    item.updatedby = currentUser.entryid;
                    item.isactive  = true;
                }
                else
                {
                    //update
                    item.createdby = isExist.createdby;
                    item.updatedat = DateTime.Now;
                    item.updatedby = currentUser.entryid;
                }
                item.AddOrUpdate(currentUser.entryid, null, false);
                return(Json(new { success = true, data = item }));
            }
            catch (Exception e)
            {
                return(Json(new { success = false, message = e.Message }));
            }
            finally { db.Close(); }
        }
示例#31
0
        public async Task <IActionResult> AddContact([FromBody] ContactRequest request)
        {
            string accessToken = await HttpContext.GetToken();

            var session = await sessionService.GetSession(accessToken);

            if (session == null)
            {
                return(Unauthorized(new { message = "Session expired. Please login again." }));
            }

            var newContact = await userRepository.FindUser(request.UserName);

            if (newContact == null)
            {
                return(BadRequest(new { message = $"Contact doesn't exist: {request.UserName}" }));
            }

            var contactList = await userRepository.GetContacts(session.UserId);

            if (contactList.Contains(newContact.UserName))
            {
                return(BadRequest(new { message = $"Contact already in contact list: {request.UserName}" }));
            }

            try
            {
                var added = await userRepository.AddContact(session.UserId, newContact.UserName);

                await log.InfoAsync($"New Contact Added: [{newContact.UserName}]", context : session.UserId);

                return(Ok(true));
            }
            catch (Exception ex)
            {
                await log.ErrorAsync("Error in userRepository.AddContact()", ex);

                return(BadRequest(new { title = ex.GetType().ToString(), details = ex.StackTrace, message = ex.Message }));
            }
        }
示例#32
0
        public async Task <ContactResponse> SendContactMessageAsync(ContactRequest request)
        {
            ContactResponse response = new ContactResponse();

            // E-mail validation
            Email            email          = new Email(request.Email);
            EmailValidator   emailValidator = new EmailValidator();
            ValidationResult emailResult    = await emailValidator.ValidateAsync(email);

            if (!emailResult.IsValid)
            {
                response.AddErrorValidationResult(emailResult);
            }

            if (string.IsNullOrEmpty(request.Name))
            {
                response.SetError(new ErrorResponse("Name", string.Format(Msg.RequiredFieldX, "Nome")));
            }

            if (string.IsNullOrEmpty(request.Subject))
            {
                response.SetError(new ErrorResponse("Subject", string.Format(Msg.RequiredFieldX, "Assunto")));
            }

            if (string.IsNullOrEmpty(request.Message))
            {
                response.SetError(new ErrorResponse("Message", string.Format(Msg.RequiredFieldX, "Mensagem")));
            }

            if (!response.IsValid())
            {
                return(response);
            }

            // Sending Email
            await _emailService.SendContactEmailAsync(request.Name, request.Email.Trim().ToLower(), request.Subject, request.Message);

            return(response);
        }
 public IActionResult AddContact(ContactRequest request)
 {
     if (ModelState.IsValid)
     {
         SingleResponse <int> response = new SingleResponse <int>();
         try
         {
             _xbService.AddContact(request.Contact);
             response.ResultCode = ResultCodes.normal;
         }
         catch
         {
             response.ResultCode = ResultCodes.failed;
         }
         response.Result = 0;
         return(ResponseExtensions.ToHttpResponse(response));
     }
     else
     {
         return(ValidationError.GetValidationErrorResponse(ModelState));
     }
 }
示例#34
0
 public CreateContactRequest ToCreateContact(ContactRequest contactRequest)
 {
     return(new CreateContactRequest
     {
         Body = new EnvelopeBody
         {
             CreateContact = new CreateContact
             {
                 AuthenticationParameters = new AuthenticationParameters
                 {
                     Reseller = _reseller,
                     Username = _username,
                     Password = _password
                 },
                 CommandParameters = new CommandParameters
                 {
                     LaunchPhase = contactRequest.LaunchPhase,
                     TLD = contactRequest.TLD,
                     Contact = new CreateContactCommandParametersContact
                     {
                         City = contactRequest.Contact.City,
                         CountryCode = contactRequest.Contact.CountryCode,
                         Email = contactRequest.Contact.Email,
                         Fax = contactRequest.Contact.Fax,
                         Name = contactRequest.Contact.Name,
                         Organisation = contactRequest.Contact.Organisation,
                         Postcode = contactRequest.Contact.Postcode,
                         State = contactRequest.Contact.State,
                         Street1 = contactRequest.Contact.Street1,
                         Street2 = contactRequest.Contact.Street2,
                         Street3 = contactRequest.Contact.Street3,
                         Telephone = contactRequest.Contact.Telephone,
                         TelephoneExtension = contactRequest.Contact.TelephoneExtension
                     }
                 }
             }
         }
     });
 }
        public async Task Post()
        {
            var request = new ContactRequest()
            {
                Name  = "leo",
                Email = "*****@*****.**",
                Phone = "66666"
            };

            var content       = JsonConvert.SerializeObject(request);
            var stringContent = new StringContent(content, Encoding.UTF8, "application/json");

            var response = await _client.PostAsync("/api/contacts", stringContent);

            response.EnsureSuccessStatusCode();
            var responseString = await response.Content.ReadAsStringAsync();

            var contact = JsonConvert.DeserializeObject <ContactResponse>(responseString);

            Assert.Equal(4, contact.Id);
            Assert.Equal("leo", contact.Name);
        }
        public JsonResult AcceptRequest(int requestId)
        {
            GenericResponse result = new GenericResponse()
            {
                IsSuccessful = false
            };

            try
            {
                if (requestId <= 0)
                {
                    result.ErrorMessage = "Bad request.";
                    return(new JsonResult(result));
                }

                // Retrieve the requested user
                ContactRequest request = _contactRequestService.GetContactRequest(requestId);

                if (request != null && ContactRequestPermissionHelper.CanModifyContactRequest(_context.CurrentUser, request))
                {
                    // Confirm the request
                    _contactRequestService.ConfirmContactRequest(_context.CurrentUser, request);

                    // If we got this far we're successful
                    result.IsSuccessful = true;
                }
                else
                {
                    result.ErrorMessage = "You do not have permission to modify this contact request.";
                }
            }
            catch (Exception e)
            {
                result.ErrorMessage = "An exception occured.";
                _exceptionService.ReportException(e);
            }

            return(new JsonResult(result));
        }
示例#37
0
 protected void LinkButtonSend_Click(object sender, EventArgs e)
 {
     if (Page.IsValid)
     {
         var contactRequest = new ContactRequest {
             Name = TextBoxName.Text,
             Email = TextBoxEmail.Text,
             Phone = TextBoxPhone.Text,
             Message = TextBoxMessage.Text,
             Interests = String.Join(", ", CheckBoxListInterests.Items.Cast<ListItem>().Where(item => item.Selected).Select(item => item.Value).ToArray()) };
         contactRequest.Save();
         var emailService = new EmailService(EmailService.form.contact);
         var notificationMessage = emailService.mailMessage;
         notificationMessage.Subject = "New contact request";
         notificationMessage.Body = String.Format("Name: {0}\n\nEmail: {1}\n\nPhone: {2}\n\nMessage:\n{3}\n\nInterests: {4}\n\n",
             TextBoxName.Text,
             TextBoxEmail.Text,
             TextBoxPhone.Text,
             TextBoxMessage.Text,
             String.Join(", ", CheckBoxListInterests.Items.Cast<ListItem>().Where(item => item.Selected).Select(item => item.Value).ToArray()));
         emailService.sendMessage(notificationMessage);
         MultiViewContactRequest.SetActiveView(ViewResponse);
     }
 }