Exemplo n.º 1
0
        public virtual ProcessedOrganisation Build(Organisation organisation)
        {
            var body = _markdownWrapper.ConvertToHtml(organisation.AboutUs ?? "");

            var volunteering = new Volunteering
            {
                Email              = organisation.Email,
                VolunteeringText   = organisation.VolunteeringText,
                VolunteeringNeeded = organisation.Volunteering,
                Url  = $"organisations/{organisation.Slug}",
                Type = "organisation"
            };

            var donations = new Donations()
            {
                Email        = organisation.Email,
                GetDonations = organisation.Donations,
                Url          = $"groups/{organisation.Slug}"
            };

            var groupsWithFavourites = cookiesHelper.PopulateCookies(organisation.Groups, "favourites");

            return(new ProcessedOrganisation(organisation.Title, organisation.Slug, organisation.ImageUrl, body, organisation.Phone,
                                             organisation.Email, groupsWithFavourites, volunteering, donations));
        }
        public ActionResult DeleteConfirmed(int id)
        {
            Volunteering volunteering = db.Volunteerings.Find(id);

            db.Volunteerings.Remove(volunteering);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        public ActionResult Create([Bind(Include = "Remarks, EventID, VolunteerID")] Volunteering volunteering)
        {
            bool b = true;

            //assign datetime from event
            Event evt = db.Events.Find(volunteering.EventID);

            volunteering.BeginDate = evt.StartDate;
            volunteering.BeginTime = evt.StartTime;
            volunteering.EndDate   = evt.EndDate;
            volunteering.EndTime   = evt.EndTime;

            //check for datetime conflicts as required!
            //check for datetime conflicts as required!
            //check for datetime conflicts as required!
            //check for datetime conflicts as required!
            foreach (Volunteering vs in db.Volunteerings
                     .Where(el => (el.VolunteerID == volunteering.VolunteerID)))
            {
                DateTime startDate        = new DateTime(vs.BeginDate.Year, vs.BeginDate.Month, vs.BeginDate.Day, vs.BeginTime.Hour, vs.BeginTime.Minute, vs.BeginTime.Second);
                DateTime endDate          = new DateTime(vs.EndDate.Year, vs.EndDate.Month, vs.EndDate.Day, vs.EndTime.Hour, vs.EndTime.Minute, vs.EndTime.Second);
                DateTime startCompareDate = new DateTime(volunteering.BeginDate.Year, volunteering.BeginDate.Month, volunteering.BeginDate.Day, volunteering.BeginTime.Hour, volunteering.BeginTime.Minute, volunteering.BeginTime.Second);
                DateTime endCompareDate   = new DateTime(volunteering.EndDate.Year, volunteering.EndDate.Month, volunteering.EndDate.Day, volunteering.EndTime.Hour, volunteering.EndTime.Minute, volunteering.EndTime.Second);
                if ((startCompareDate >= startDate && startCompareDate <= endDate)
                    ||
                    (endCompareDate >= startDate && endCompareDate <= endDate))
                {
                    b = false;
                }
            }

            if (!b)
            {
                TempData["ErrorMessage"] = "This Volunteer has already been assigned to another event within this time slot.";
                return(RedirectToAction("Index"));
            }

            //duplicates
            if (db.Volunteerings.Where(el => (el.VolunteerID == volunteering.VolunteerID)
                                       &&
                                       (el.EventID == volunteering.EventID)).Count() > 0)
            {
                TempData["ErrorMessage"] = "The Volunteer has already been assigned to the Event.";
                return(RedirectToAction("Index"));
            }

            if (ModelState.IsValid)
            {
                db.Volunteerings.Add(volunteering);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            ViewBag.EventID     = new SelectList(db.Events, "EventID", "Title", volunteering.EventID);
            ViewBag.VolunteerID = new SelectList(db.Volunteers, "VolunteerID", "FirstName", volunteering.VolunteerID);
            return(View(volunteering));
        }
Exemplo n.º 4
0
 public ProcessedOrganisation(string title, string slug, string imageUrl, string aboutUs, string phone,
                              string email, List <Group> groups, Volunteering volunteering, Donations donations)
 {
     Title        = title;
     Slug         = slug;
     Phone        = phone;
     Email        = email;
     AboutUs      = aboutUs;
     ImageUrl     = imageUrl;
     Volunteering = volunteering;
     Groups       = groups;
     Donations    = donations;
 }
        // GET: Volunteerings/Delete/{id}
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Volunteering volunteering = db.Volunteerings.Find(id);

            if (volunteering == null)
            {
                return(HttpNotFound());
            }
            return(View(volunteering));
        }
Exemplo n.º 6
0
 public ProcessedGroup(string name, string slug, string metaDescription, string phoneNumber, string email, string website, string twitter,
                       string facebook, string address, string description, string imageUrl, string thumbnailImageUrl, List <GroupCategory> categoriesReference, List <GroupSubCategory> subCategories,
                       List <Crumb> breadcrumbs, List <Event> events, GroupAdministrators groupAdministrators, DateTime?dateHiddenFrom, DateTime?dateHiddenTo,
                       List <string> cost, string costText, string abilityLevel, bool favourite, Volunteering volunteering, Organisation organisation, List <Group> linkedGroups, Donations donations,
                       MapDetails mapDetails, string additionalInformation, List <Document> additionalDocuments, string donationsText, string donationsUrl, DateTime?dateLastModified, List <GroupBranding> groupBranding, IEnumerable <Alert> alerts)
 {
     Name                  = name;
     Slug                  = slug;
     MetaDescription       = metaDescription;
     PhoneNumber           = phoneNumber;
     Email                 = email;
     Website               = website;
     Twitter               = twitter;
     Facebook              = facebook;
     Address               = address;
     Description           = description;
     ImageUrl              = imageUrl;
     ThumbnailImageUrl     = thumbnailImageUrl;
     CategoriesReference   = categoriesReference;
     SubCategories         = subCategories;
     Breadcrumbs           = breadcrumbs;
     MapDetails            = mapDetails;
     AdditionalInformation = additionalInformation;
     Volunteering          = volunteering;
     Events                = events;
     GroupAdministrators   = groupAdministrators;
     DateHiddenFrom        = dateHiddenFrom;
     DateHiddenTo          = dateHiddenTo;
     Cost                  = cost;
     CostText              = costText;
     AbilityLevel          = abilityLevel;
     Favourite             = favourite;
     Organisation          = organisation;
     LinkedGroups          = linkedGroups;
     Donations             = donations;
     AdditionalInformation = additionalInformation;
     AdditionalDocuments   = additionalDocuments;
     DonationsText         = donationsText;
     DonationsUrl          = donationsUrl;
     DateLastModified      = dateLastModified;
     GroupBranding         = groupBranding;
     Alerts                = alerts;
 }
Exemplo n.º 7
0
        public virtual ProcessedGroup Build(Group group)
        {
            var htmlBody      = _markdownWrapper.ConvertToHtml(group.Description);
            var processedBody = _parser.ParseAll(htmlBody, group.Name);

            var additionalInformation       = _markdownWrapper.ConvertToHtml(group.AdditionalInformation);
            var parsedAdditionalInformation = _parser.ParseAll(additionalInformation, group.Name);

            processedBody = Regex.Replace(processedBody, "<script", "<scri-pt", RegexOptions.IgnoreCase);
            processedBody = Regex.Replace(processedBody, "javascript", "javascri-pt", RegexOptions.IgnoreCase);

            var volunteering = new Volunteering()
            {
                Email              = group.Email,
                VolunteeringText   = group.VolunteeringText,
                VolunteeringNeeded = group.Volunteering,
                Url  = $"groups/{group.Slug}",
                Type = "group"
            };

            var donations = new Donations()
            {
                GetDonations  = group.Donations,
                Url           = $"groups/{group.Slug}",
                Email         = group.Email,
                DonationsText = group.DonationsText,
                DonationsUrl  = group.DonationsUrl
            };
            var mapDetails = new MapDetails()
            {
                MapPosition             = group.MapPosition,
                AccessibleTransportLink = group.AccessibleTransportLink
            };

            return(new ProcessedGroup(group.Name, group.Slug, group.MetaDescription, group.PhoneNumber, group.Email, group.Website, group.Twitter,
                                      group.Facebook, group.Address, processedBody, group.ImageUrl, group.ThumbnailImageUrl, group.CategoriesReference, group.SubCategories,
                                      group.Breadcrumbs, group.Events, group.GroupAdministrators, group.DateHiddenFrom, group.DateHiddenTo,
                                      group.Cost, group.CostText, group.AbilityLevel, group.Favourite, volunteering, group.Organisation,
                                      group.LinkedGroups, donations, mapDetails, parsedAdditionalInformation, group.AdditionalDocuments, group.DonationsText, group.DonationsUrl,
                                      group.DateLastModified, group.GroupBranding, group.Alerts));
        }
        public async Task <Unit> Handle(CreateVolunteeringCommand request, CancellationToken cancellationToken)
        {
            var volunteering = new Volunteering
            {
                Customer = await _context.Customers.FindAsync(request.CustomerId),
                Type     = await _context.VolunteeringTypes.FindAsync(request.VolunteeringTypeId),

                Acknowledgment = request.Acknowledgment,
                Amount         = DecimalParser.Parse(request.Amount),
                Date           = request.Date,
                Details        = request.Details,
                HourCount      = request.HourCount,
                Title          = request.Title
            };

            await _context.AddAsync(volunteering);

            await _context.SaveChangesAsync();

            return(Unit.Value);
        }
        public VolunteeringTest()
        {
            _context = GetDbContext();

            Customer = new Customer {
                FirstName = "Yoo"
            };
            Customer2 = new Customer {
                FirstName = "Aaargh"
            };
            VolunteeringType = new VolunteeringType {
                Name = "Freeee"
            };
            VolunteeringType2 = new VolunteeringType {
                Name = "Freeee"
            };


            _context.Add(Customer);
            _context.Add(Customer2);
            _context.Add(VolunteeringType);
            _context.Add(VolunteeringType2);

            MainVolonteering = new Volunteering
            {
                Title          = VOLUNTEERING_TITLE,
                Date           = new DateTime(2012, 3, 29),
                Amount         = 3,
                Details        = "",
                HourCount      = 8,
                Acknowledgment = "WantSome",
                Customer       = Customer,
                IsDelete       = false,
                Type           = VolunteeringType
            };

            _context.Add(MainVolonteering);

            _context.SaveChanges();
        }