Beispiel #1
0
        public UpdateLeadAdapterResponse UpdateFacebookLeadAdapter(UpdateLeadAdapterRequest request)
        {
            Logger.Current.Verbose("Request received to update Facebook lead adapter.");

            try
            {
                LeadAdapterAndAccountMap leadAdapter = Mapper.Map <LeadAdapterViewModel, LeadAdapterAndAccountMap>(request.LeadAdapterViewModel);

                bool isDuplicate = leadAdaptersRepository.IsDuplicateFacebookAdapter(request.AccountId, leadAdapter.Id, leadAdapter.FacebookLeadAdapterName);
                if (isDuplicate)
                {
                    throw new UnsupportedOperationException("[|LeadAdapter with same name already exists.|]");
                }

                leadAdaptersRepository.Update(leadAdapter);
                unitOfWork.Commit();
                GetFacebookAppResponse fbResponse = this.GetFacebookApp(new GetFacebookAppRequest()
                {
                    AccountId = request.AccountId
                });
                string extendedToken = this.GetExtendedPageAccessToken(leadAdapter.FacebookLeadAdapter.UserAccessToken, leadAdapter.FacebookLeadAdapter.PageID, fbResponse.FacebookAppID, fbResponse.FacebookAppSecret);
                leadAdapter.FacebookLeadAdapter.PageAccessToken = !string.IsNullOrEmpty(extendedToken) ? extendedToken : leadAdapter.FacebookLeadAdapter.PageAccessToken;


                leadAdaptersRepository.UpdateFacebookLeadAdapter(leadAdapter.FacebookLeadAdapter);
            }
            catch (Exception ex)
            {
                Logger.Current.Error("An error occured while updating facebook lead adapter", ex);
            }
            Logger.Current.Informational("Leadadapter updated successfully.");
            return(new UpdateLeadAdapterResponse());
        }
Beispiel #2
0
        public UpdateLeadAdapterResponse UpdateLeadAdapter(UpdateLeadAdapterRequest request)
        {
            Logger.Current.Verbose("Request received to update a lead adapter.");
            FTPAgent agent = new FTPAgent();

            LeadAdapterAndAccountMap leadAdapter = Mapper.Map <LeadAdapterViewModel, LeadAdapterAndAccountMap>(request.LeadAdapterViewModel);
            bool isDuplicate = leadAdaptersRepository.IsDuplicateLeadAdapter(leadAdapter.LeadAdapterTypeID, leadAdapter.AccountID, leadAdapter.Id);

            if (isDuplicate)
            {
                throw new UnsupportedOperationException("[|LeadAdapter already exists.|]");
            }
            string leadAdapterPhysicalPath = ConfigurationManager.AppSettings["LEADADAPTER_PHYSICAL_PATH"].ToString();

            request.LeadAdapterViewModel.ArchivePath = Path.Combine(leadAdapterPhysicalPath, request.LeadAdapterViewModel.AccountID.ToString(),
                                                                    request.LeadAdapterViewModel.LeadAdapterType.ToString(), "Archive");
            request.LeadAdapterViewModel.LocalFilePath = Path.Combine(leadAdapterPhysicalPath, request.LeadAdapterViewModel.AccountID.ToString(),
                                                                      request.LeadAdapterViewModel.LeadAdapterType.ToString(), "Local");
            if (agent.UpdateFtpRegistration(request.LeadAdapterViewModel.UserName, request.LeadAdapterViewModel.Password, request.LeadAdapterViewModel.Url,
                                            request.LeadAdapterViewModel.Port, request.LeadAdapterViewModel.EnableSSL, request.LeadAdapterViewModel.RequestGuid) && leadAdapter != null)
            {
                leadAdaptersRepository.Update(leadAdapter);
                unitOfWork.Commit();
                Logger.Current.Informational("Leadadapter updated successfully.");
            }
            return(new UpdateLeadAdapterResponse());
        }
        public ActionResult UpdateLeadAdapter(string leadAdapterViewModel)
        {
            LeadAdapterViewModel viewModel = JsonConvert.DeserializeObject <LeadAdapterViewModel>(leadAdapterViewModel);

            viewModel.AccountID = this.Identity.ToAccountID();
            if (viewModel.LastProcessed.HasValue)
            {
                viewModel.LastProcessed = viewModel.LastProcessed.Value.GetCorrectUtzDateTime();
            }
            viewModel.ModifiedBy       = this.Identity.ToUserID();
            viewModel.ModifiedDateTime = DateTime.Now.ToUniversalTime();
            UpdateLeadAdapterRequest request = new UpdateLeadAdapterRequest()
            {
                LeadAdapterViewModel = viewModel, AccountId = this.Identity.ToAccountID()
            };

            if (viewModel.LeadAdapterType != LeadAdapterTypes.Facebook)
            {
                leadAdapterService.UpdateLeadAdapter(request);
            }
            else
            {
                leadAdapterService.UpdateFacebookLeadAdapter(request);
            }

            return(Json(new { success = true, response = "" }, JsonRequestBehavior.AllowGet));
        }
        public HttpResponseMessage UpdateLeadadapter(LeadAdapterViewModel viewModel)
        {
            UpdateLeadAdapterRequest request = new UpdateLeadAdapterRequest()
            {
                LeadAdapterViewModel = viewModel
            };
            UpdateLeadAdapterResponse response = leadAdapterService.UpdateLeadAdapter(request);

            return(Request.BuildResponse(response));
        }