Beispiel #1
0
 public SlotManager(ISlotAssignmentManager slotAssignmentManager, ITournamentRegistrationsManager tournamentRegistrationsManager, ITournamentManager tournamentManager, IBookingManager bookingManager, IEMailService mailService, DebRegUserManager userManager)
 {
     this.slotAssignmentManager = slotAssignmentManager;
     this.tournamentregistrationsManager = tournamentRegistrationsManager;
     this.tournamentManager = tournamentManager;
     this.bookingManager = bookingManager;
     this.mailService = mailService;
     this.userManager = userManager;
 }
Beispiel #2
0
        public void Init()
        {
            // Create mocks
            DebRegDataMocks dataMocks = new DebRegDataMocks();
            DebRegCommunicationMocks communicationMocks = new DebRegCommunicationMocks();
            userManager = dataMocks.UserManager;

            unitOfWork = dataMocks.UnitOfWork;
            // Create Managers
            slotAssignmentManager = new SlotAssignmentManager(unitOfWork);
            tournamentManager = new TournamentManager(unitOfWork, userManager);
            tournamentRegistrationsManager = new TournamentRegistrationsManager(unitOfWork, communicationMocks.EMailService, userManager);
            bookingManager = new BookingManager(unitOfWork);

            slotManager = new SlotManager(slotAssignmentManager, tournamentRegistrationsManager, tournamentManager, bookingManager, communicationMocks.EMailService, userManager);

            // Create basic objects

            Organization hostingOrganization = new Organization { Id = Guid.NewGuid() };
            Random rand = new Random();

            User user = CreateUserWithOrganizationRole(hostingOrganization, OrganizationRole.OrganizationTournamentManager);

            // Create tournament

            tournament = new Tournament
            {
                Id = Guid.NewGuid(),
                HostingOrganization = hostingOrganization,
                HostingOrganizationID = hostingOrganization.Id,
                TeamProduct = new Product
                {
                    Id = Guid.NewGuid(),
                    Price = 40
                },
                AdjudicatorProduct = new Product
                {
                    Id = Guid.NewGuid(),
                    Price = 20
                }
            };
            {
                var task = tournamentManager.AddTournamentAsync(tournament, user);
                if (!task.IsCompleted)
                {
                    task.Wait();
                }
            }

            // Create registrations
            Guid[] organizationIds = new Guid[] { Guid.NewGuid(), Guid.NewGuid(), Guid.NewGuid(), Guid.NewGuid() };

            for (int i = 0; i < organizationIds.Length; i++)
            {
                int teamsWanted = i + 1;
                int adjudicatorsWanted = i;
                var registration = tournamentRegistrationsManager.AddRegistration(
                    tournament.Id,
                    organizationIds[i],
                    organizationIds[i],
                    teamsWanted,
                    adjudicatorsWanted,
                    null,
                    user
                );

                registration.OrganizationStatus = OrganizationStatus.Approved;
                registration.OrganizationStatusDraft = false;
            }

        }
Beispiel #3
0
        //public ActionResult SendAssignmentNotifications() {
        //    // Find currentTournament

        //    var ident = HttpContext.User.Identity as ClaimsIdentity;
        //    var currentTournamentId = claimsManager.GetCurrentTournamentId(ident);
        //    var user = userManager.FindById(ident.GetUserId());

        //    String paymentPageUrl = HttpContext.Request.Url.GetLeftPart(UriPartial.Authority) +
        //        Url.Action("Display", "TournamentRegistration", new {
        //            Area = "",
        //            tournamentId = "{0}",   // will be filled by slotManager
        //            organizationId = "{1}",  // will be filled by slotManager
        //            tab = "account",
        //        });
        //    paymentPageUrl = HttpContext.Server.UrlDecode(paymentPageUrl);
        //    slotManager.SendAssignmentNotifications(currentTournamentId, paymentPageUrl, user);
        //    return Redirect("Index");
        //}
        public SlotController(
            IUnitOfWork unitOfWork,
            ITournamentRegistrationsManager tournamentRegistrationsManager,
            ISlotAssignmentManager slotAssignmentManager,
            ISlotManager slotManager,
            IOrganizationManager organizationManager,
            ITournamentManager tournamentManager,
            DebRegUserManager userManager)
        {
            this.unitOfWork = unitOfWork;
            // this.claimsManager = claimsManager;
            this.tournamentRegistrationsManager = tournamentRegistrationsManager;
            this.slotAssignmentManager = slotAssignmentManager;
            this.slotManager = slotManager;
            this.organizationManager = organizationManager;
            this.tournamentManager = tournamentManager;
            this.userManager = userManager;
        }