// GET: Assistance
        // GET: Contacts
        // Note: the SOQL Field list, and Binding Property list have subtle differences as custom properties may be mapped with the JsonProperty attribute to remove __c
        //const string _ContactsPostBinding = "Id,Salutation,FirstName,LastName,MailingStreet,MailingCity,MailingState,MailingPostalCode,MailingCountry,Phone,Email";
        // GET: Contacts
        public async Task <ActionResult> Index()
        {
            IEnumerable <Assistance__c> selectedContacts = Enumerable.Empty <Assistance__c>();

            try
            {
                selectedContacts = await SalesforceService.MakeAuthenticatedClientRequestAsync(
                    async (client) =>
                {
                    QueryResult <Assistance__c> contacts =
                        await client.QueryAsync <Assistance__c>("SELECT Owner ID, Assistance Name, Contact, Date, Description, Provider, Status From Assistance__c");
                    return(contacts.Records);
                }
                    );
            }
            catch (Exception e)
            {
                this.ViewBag.OperationName    = "query Salesforce Contacts";
                this.ViewBag.AuthorizationUrl = SalesforceOAuthRedirectHandler.GetAuthorizationUrl(this.Request.Url.ToString());
                this.ViewBag.ErrorMessage     = e.Message;
            }
            if (this.ViewBag.ErrorMessage == "AuthorizationRequired")
            {
                return(Redirect(this.ViewBag.AuthorizationUrl));
            }
            return(View(selectedContacts));
        }
Ejemplo n.º 2
0
        public async Task <ActionResult> Edit(string id)
        {
            IEnumerable <Contact> selectedContacts = Enumerable.Empty <Contact>();

            try
            {
                selectedContacts = await SalesforceService.MakeAuthenticatedClientRequestAsync(
                    async (client) =>
                {
                    QueryResult <Contact> contacts =
                        await client.QueryAsync <Contact>("SELECT Id, FirstName, LastName, MailingStreet, MailingCity, MailingState, MailingPostalCode, MailingCountry, Phone, Email From Contact Where Id= '" + id + "'");
                    return(contacts.Records);
                }
                    );
            }
            catch (Exception e)
            {
                this.ViewBag.OperationName    = "Edit Salesforce Contacts";
                this.ViewBag.AuthorizationUrl = SalesforceOAuthRedirectHandler.GetAuthorizationUrl(this.Request.Url.ToString());
                this.ViewBag.ErrorMessage     = e.Message;
            }
            if (this.ViewBag.ErrorMessage == "AuthorizationRequired")
            {
                return(Redirect(this.ViewBag.AuthorizationUrl));
            }
            return(View(selectedContacts.FirstOrDefault()));
        }
Ejemplo n.º 3
0
        public async Task <ActionResult> Create([Bind(Include = _ContactsPostBinding)] Contact contact)
        {
            String id = String.Empty;

            try
            {
                id = (await SalesforceService.MakeAuthenticatedClientRequestAsync(
                          async(client) =>
                {
                    return(await client.CreateAsync("Contact", contact));
                }
                          )).ToString();
            }
            catch (Exception e)
            {
                this.ViewBag.OperationName    = "Create Salesforce Contact";
                this.ViewBag.AuthorizationUrl = SalesforceOAuthRedirectHandler.GetAuthorizationUrl(this.Request.Url.ToString());
                this.ViewBag.ErrorMessage     = e.Message;
            }
            if (this.ViewBag.ErrorMessage == "AuthorizationRequired")
            {
                return(Redirect(this.ViewBag.AuthorizationUrl));
            }
            if (this.ViewBag.ErrorMessage == null)
            {
                return(RedirectToAction("Index"));
            }
            else
            {
                return(View(contact));
            }
        }
Ejemplo n.º 4
0
        public async Task <ActionResult> Edit(string id)
        {
            IEnumerable <LeadViewModel> selectedLeads = Enumerable.Empty <LeadViewModel>();

            try
            {
                selectedLeads = await SalesforceService.MakeAuthenticatedClientRequestAsync(
                    async (client) =>
                {
                    QueryResult <LeadViewModel> leads =
                        await client.QueryAsync <LeadViewModel>("SELECT Id, Salutation, FirstName, LastName, Company, Street, City, State, PostalCode, Phone, MobilePhone, Fax, Email, Status, Description From Lead Where Id = '" + id + "'");
                    return(leads.Records);
                }
                    );
            }
            catch (Exception e)
            {
                this.ViewBag.OperationName    = "Edit Salesforce Leads";
                this.ViewBag.AuthorizationUrl = SalesforceOAuthRedirectHandler.GetAuthorizationUrl(this.Request.Url.ToString());
                this.ViewBag.ErrorMessage     = e.Message;
            }
            if (this.ViewBag.ErrorMessage == "AuthorizationRequired")
            {
                return(Redirect(this.ViewBag.AuthorizationUrl));
            }
            return(View(selectedLeads.FirstOrDefault()));
        }
Ejemplo n.º 5
0
        public async Task <ActionResult> Edit(string id)
        {
            IEnumerable <Product2> selectedProduct2s = Enumerable.Empty <Product2>();

            try
            {
                selectedProduct2s = await SalesforceService.MakeAuthenticatedClientRequestAsync(
                    async (client) =>
                {
                    QueryResult <Product2> Product2s =
                        await client.QueryAsync <Product2>("SELECT Id, Name, ProductCode, Description, CreatedDate, Family From Product2 Where Id= '" + id + "'");
                    return(Product2s.Records);
                }
                    );
            }
            catch (Exception e)
            {
                this.ViewBag.OperationName    = "Edit Salesforce Product2s";
                this.ViewBag.AuthorizationUrl = SalesforceOAuthRedirectHandler.GetAuthorizationUrl(this.Request.Url.ToString());
                this.ViewBag.ErrorMessage     = e.Message;
            }
            if (this.ViewBag.ErrorMessage == "AuthorizationRequired")
            {
                return(Redirect(this.ViewBag.AuthorizationUrl));
            }
            return(View(selectedProduct2s.FirstOrDefault()));
        }
Ejemplo n.º 6
0
        public async Task <ActionResult> DeleteConfirmed(string id)
        {
            bool success = false;

            try
            {
                success = await SalesforceService.MakeAuthenticatedClientRequestAsync(
                    async (client) =>
                {
                    success = await client.DeleteAsync("Contact", id);
                    return(success);
                }
                    );
            }
            catch (Exception e)
            {
                this.ViewBag.OperationName    = "Delete Salesforce Contacts";
                this.ViewBag.AuthorizationUrl = SalesforceOAuthRedirectHandler.GetAuthorizationUrl(this.Request.Url.ToString());
                this.ViewBag.ErrorMessage     = e.Message;
            }
            if (this.ViewBag.ErrorMessage == "AuthorizationRequired")
            {
                return(Redirect(this.ViewBag.AuthorizationUrl));
            }
            if (success)
            {
                return(RedirectToAction("Index"));
            }
            else
            {
                return(View());
            }
        }
Ejemplo n.º 7
0
        public async Task <ActionResult> Edit([Bind(Include = _ContactsPostBinding)] Contact contact)
        {
            SuccessResponse success = new SuccessResponse();

            try
            {
                success = await SalesforceService.MakeAuthenticatedClientRequestAsync(
                    async (client) =>
                {
                    success = await client.UpdateAsync("Contact", contact.Id, contact);
                    return(success);
                }
                    );
            }
            catch (Exception e)
            {
                this.ViewBag.OperationName    = "Edit Salesforce Contact";
                this.ViewBag.AuthorizationUrl = SalesforceOAuthRedirectHandler.GetAuthorizationUrl(this.Request.Url.ToString());
                this.ViewBag.ErrorMessage     = e.Message;
            }
            if (this.ViewBag.ErrorMessage == "AuthorizationRequired")
            {
                return(Redirect(this.ViewBag.AuthorizationUrl));
            }
            if (success.Success == true)
            {
                return(RedirectToAction("Index"));
            }
            else
            {
                return(View(contact));
            }
        }
Ejemplo n.º 8
0
        // GET: Contacts
        public async Task <ActionResult> Index()
        {
            IEnumerable <Contact> selectedContacts = Enumerable.Empty <Contact>();

            try
            {
                selectedContacts = await SalesforceService.MakeAuthenticatedClientRequestAsync(
                    async (client) =>
                {
                    QueryResult <Contact> contacts =
                        await client.QueryAsync <Contact>("SELECT Id, Salutation, FirstName, LastName, MailingCity, MailingState, MailingCountry From Contact");
                    return(contacts.Records);
                }
                    );
            }
            catch (Exception e)
            {
                this.ViewBag.OperationName    = "query Salesforce Contacts";
                this.ViewBag.AuthorizationUrl = SalesforceOAuthRedirectHandler.GetAuthorizationUrl(this.Request.Url.ToString());
                this.ViewBag.ErrorMessage     = e.Message;
            }
            if (this.ViewBag.ErrorMessage == "AuthorizationRequired")
            {
                return(Redirect(this.ViewBag.AuthorizationUrl));
            }
            return(View(selectedContacts));
        }
Ejemplo n.º 9
0
        public async Task <ActionResult> Edit(string id)
        {
            IEnumerable <Event> selectedEvents = Enumerable.Empty <Event>();

            try
            {
                selectedEvents = await SalesforceService
                                 .MakeAuthenticatedClientRequestAsync(
                    async (client) =>
                {
                    QueryResult <Event> Events =
                        await client
                        .QueryAsync <Event>(
                            _SelectAll + $" Where Id= '{id}'");
                    return(Events.Records);
                }
                    );
            }
            catch (Exception e)
            {
                ViewBag.OperationName    = "Edit Salesforce Events";
                ViewBag.AuthorizationUrl = SalesforceOAuthRedirectHandler
                                           .GetAuthorizationUrl(Request.Url.ToString());
                ViewBag.ErrorMessage = e.Message;
            }
            if (ViewBag.ErrorMessage == "AuthorizationRequired")
            {
                return(Redirect(ViewBag.AuthorizationUrl));
            }
            return(View(selectedEvents.FirstOrDefault()));
        }
Ejemplo n.º 10
0
        public async Task <ActionResult> Create([Bind(Include = _EventsPostBinding)] Event Event)
        {
            SuccessResponse success = new SuccessResponse();
            String          id      = String.Empty;

            try
            {
                success = await SalesforceService.MakeAuthenticatedClientRequestAsync(
                    async (client) =>
                {
                    return(await client.CreateAsync("Event", Event));
                }
                    );

                id = success.Id;
            }
            catch (Exception e)
            {
                this.ViewBag.OperationName    = "Create Salesforce Event";
                this.ViewBag.AuthorizationUrl = SalesforceOAuthRedirectHandler.GetAuthorizationUrl(this.Request.Url.ToString());
                this.ViewBag.ErrorMessage     = e.Message;
            }
            if (this.ViewBag.ErrorMessage == "AuthorizationRequired")
            {
                return(Redirect(this.ViewBag.AuthorizationUrl));
            }
            if (this.ViewBag.ErrorMessage == null)
            {
                return(RedirectToAction("Index"));
            }
            else
            {
                return(View(Event));
            }
        }
Ejemplo n.º 11
0
        // GET: Events
        public async Task <ActionResult> Index()
        {
            IEnumerable <Event> selectedEvents = Enumerable.Empty <Event>();

            try
            {
                selectedEvents = await SalesforceService
                                 .MakeAuthenticatedClientRequestAsync(
                    async (client) =>
                {
                    QueryResult <Event> events = await client
                                                 .QueryAsync <Event>(_SelectAll);
                    return(events.Records);
                }
                    );
            }
            catch (Exception e)
            {
                ViewBag.OperationName    = "query Salesforce Events";
                ViewBag.AuthorizationUrl = SalesforceOAuthRedirectHandler
                                           .GetAuthorizationUrl(Request.Url.ToString());
                ViewBag.ErrorMessage = e.Message;
            }
            if (ViewBag.ErrorMessage == "AuthorizationRequired")
            {
                return(Redirect(ViewBag.AuthorizationUrl));
            }
            IEnumerable <EventIndexViewModel> viewEvents = EventHelper.GetEventIndexViewModel(selectedEvents);

            return(View(viewEvents));
        }
Ejemplo n.º 12
0
        // GET: Leads
        public async Task <ActionResult> Index()
        {
            ApplicationUser user = await UserManager.FindByIdAsync(User.Identity.GetUserId());

            IEnumerable <LeadViewModel> selectedLeads = Enumerable.Empty <LeadViewModel>();

            if (User.Identity.IsAuthenticated)
            {
                if (User.IsInRole("admin"))
                {
                    try
                    {
                        selectedLeads = await SalesforceService.MakeAuthenticatedClientRequestAsync(
                            async (client) =>
                        {
                            QueryResult <LeadViewModel> leads =
                                await
                                client.QueryAsync <LeadViewModel>(
                                    "SELECT Id, LastName, Salutation, FirstName, Phone, MobilePhone, Email, UserEmail__c From Lead");
                            return(leads.Records);
                        }
                            );
                    }
                    catch (Exception e)
                    {
                        this.ViewBag.OperationName    = "query Salesforce Leads";
                        this.ViewBag.AuthorizationUrl =
                            SalesforceOAuthRedirectHandler.GetAuthorizationUrl(this.Request.Url.ToString());
                        this.ViewBag.ErrorMessage = e.Message;
                    }
                }
                else
                {
                    try
                    {
                        selectedLeads = await SalesforceService.MakeAuthenticatedClientRequestAsync(
                            async (client) =>
                        {
                            QueryResult <LeadViewModel> leads =
                                await client.QueryAsync <LeadViewModel>("SELECT Id, LastName, Salutation, FirstName, Phone, MobilePhone, Email, UserEmail__c From Lead Where UserEmail__c = '" + user.UserName + "'");
                            return(leads.Records);
                        }
                            );
                    }
                    catch (Exception e)
                    {
                        this.ViewBag.OperationName    = "query Salesforce Leads";
                        this.ViewBag.AuthorizationUrl = SalesforceOAuthRedirectHandler.GetAuthorizationUrl(this.Request.Url.ToString());
                        this.ViewBag.ErrorMessage     = e.Message;
                    }
                }
            }
            if (this.ViewBag.ErrorMessage == "AuthorizationRequired")
            {
                return(Redirect(this.ViewBag.AuthorizationUrl));
            }
            return(View(selectedLeads));
        }
Ejemplo n.º 13
0
        public async Task <ActionResult> Create(LeadViewModel lead)
        {
            ApplicationUser user = await UserManager.FindByIdAsync(User.Identity.GetUserId());

            var Lead = new LeadViewModel
            {
                Id           = lead.Id,
                Salutation   = lead.Salutation,
                FirstName    = lead.FirstName,
                LastName     = lead.LastName,
                Company      = lead.Company,
                Street       = lead.Street,
                City         = lead.City,
                State        = lead.State,
                PostalCode   = lead.PostalCode,
                Phone        = lead.Phone,
                MobilePhone  = lead.MobilePhone,
                Fax          = lead.Fax,
                Email        = lead.Email,
                Status       = lead.Status,
                CreatedDate  = lead.CreatedDate,
                Description  = lead.Description,
                UserEmail__c = user.Email
            };

            String id = String.Empty;

            try
            {
                id = (await SalesforceService.MakeAuthenticatedClientRequestAsync(
                          async(client) =>
                {
                    return(await client.CreateAsync("Lead", Lead));
                }
                          )).ToString();
            }
            catch (Exception e)
            {
                this.ViewBag.OperationName    = "Create Salesforce Lead";
                this.ViewBag.AuthorizationUrl = SalesforceOAuthRedirectHandler.GetAuthorizationUrl(this.Request.Url.ToString());
                this.ViewBag.ErrorMessage     = e.Message;
            }
            if (this.ViewBag.ErrorMessage == "AuthorizationRequired")
            {
                return(Redirect(this.ViewBag.AuthorizationUrl));
            }
            if (this.ViewBag.ErrorMessage == null)
            {
                return(RedirectToAction("Index"));
            }
            else
            {
                return(View(lead));
            }
        }
Ejemplo n.º 14
0
        public Task <List <T> > SalesforceRequest <T>(string soqlQuery)
        {
            var requestTask = SalesforceService
                              .MakeAuthenticatedClientRequestAsync(
                async(client) =>
            {
                QueryResult <T> entities = await client
                                           .QueryAsync <T>(soqlQuery);
                return(entities.Records);
            }
                );

            return(requestTask);
        }
Ejemplo n.º 15
0
        public async Task <ActionResult> Delete(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            IEnumerable <Event> selectedEvents = Enumerable.Empty <Event>();

            try
            {
                selectedEvents = await SalesforceService
                                 .MakeAuthenticatedClientRequestAsync(
                    async (client) =>
                {
                    // Query the properties you'll display for the user to confirm they wish to delete this Event
                    QueryResult <Event> Events =
                        await client
                        .QueryAsync <Event>(
                            _SelectAll + $" Where Id='{id}'");
                    return(Events.Records);
                }
                    );
            }
            catch (Exception e)
            {
                ViewBag.OperationName    = "query Salesforce Events";
                ViewBag.AuthorizationUrl = SalesforceOAuthRedirectHandler
                                           .GetAuthorizationUrl(Request.Url.ToString());
                ViewBag.ErrorMessage = e.Message;
            }
            if (ViewBag.ErrorMessage == "AuthorizationRequired")
            {
                return(Redirect(ViewBag.AuthorizationUrl));
            }
            if (selectedEvents.Count() == 0)
            {
                return(View());
            }
            else
            {
                return(View(selectedEvents.FirstOrDefault()));
            }
        }
Ejemplo n.º 16
0
        public async Task <ActionResult> Delete(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            IEnumerable <Contact> selectedContacts = Enumerable.Empty <Contact>();

            try
            {
                selectedContacts = await SalesforceService.MakeAuthenticatedClientRequestAsync(
                    async (client) =>
                {
                    // Query the properties you'll display for the user to confirm they wish to delete this Contact
                    QueryResult <Contact> contacts =
                        await client.QueryAsync <Contact>(string.Format("SELECT Id, FirstName, LastName, MailingCity, MailingState, MailingCountry From Contact Where Id='{0}'", id));
                    return(contacts.Records);
                }
                    );
            }
            catch (Exception e)
            {
                this.ViewBag.OperationName    = "query Salesforce Contacts";
                this.ViewBag.AuthorizationUrl = SalesforceOAuthRedirectHandler.GetAuthorizationUrl(this.Request.Url.ToString());
                this.ViewBag.ErrorMessage     = e.Message;
            }
            if (this.ViewBag.ErrorMessage == "AuthorizationRequired")
            {
                return(Redirect(this.ViewBag.AuthorizationUrl));
            }
            if (selectedContacts.Count() == 0)
            {
                return(View());
            }
            else
            {
                return(View(selectedContacts.FirstOrDefault()));
            }
        }
Ejemplo n.º 17
0
        public async Task <ActionResult> Delete(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            IEnumerable <LeadViewModel> selectedLeads = Enumerable.Empty <LeadViewModel>();

            try
            {
                selectedLeads = await SalesforceService.MakeAuthenticatedClientRequestAsync(
                    async (client) =>
                {
                    // Query the properties you'll display for the user to confirm they wish to delete this Contact
                    QueryResult <LeadViewModel> leads =
                        await client.QueryAsync <LeadViewModel>(string.Format("SELECT Id, Salutation, FirstName, LastName, Company, Street, City, State, PostalCode, Phone, MobilePhone, Fax, Email, Status, CreatedDate, Description, UserEmail__c  From Lead Where Id='{0}'", id));
                    return(leads.Records);
                }
                    );
            }
            catch (Exception e)
            {
                this.ViewBag.OperationName    = "query Salesforce Leads";
                this.ViewBag.AuthorizationUrl = SalesforceOAuthRedirectHandler.GetAuthorizationUrl(this.Request.Url.ToString());
                this.ViewBag.ErrorMessage     = e.Message;
            }
            if (this.ViewBag.ErrorMessage == "AuthorizationRequired")
            {
                return(Redirect(this.ViewBag.AuthorizationUrl));
            }
            if (selectedLeads.Count() == 0)
            {
                return(View());
            }
            else
            {
                return(View(selectedLeads.FirstOrDefault()));
            }
        }