Exemple #1
0
        static object GetHome(NancyContext context, IDocumentSession documentSession)
        {
            if (context == null) throw new ArgumentNullException("context");

            var alert = context.GetAlert();

            if (context.IsSignedUp())
            {
                var currentMember = context.GetCurrentMember(documentSession);
                var gmRooms = documentSession.GetRoomsByOwner(currentMember.Id);
                var playerRooms = documentSession.GetRoomsByPlayer(currentMember.Id);
                return new DashboardResponse(gmRooms, playerRooms, alert);
            }

            return new MarketingPageResponse(alert);
        }
Exemple #2
0
        static object GetMember(
            NancyContext context,
            IDocumentSession documentSession,
            string alias)
        {
            if (context == null) throw new ArgumentNullException("context");
            if (documentSession == null) throw new ArgumentNullException("documentSession");

            if (String.IsNullOrEmpty(alias))
                return 404;

            if (!context.IsSignedUp())
                return 403;

            var member = documentSession.GetMemberByAlias(alias);
            if (member == null)
                return 404;

            var currentMember = context.GetCurrentMember(documentSession);
            Debug.Assert(currentMember != null, "`requireSignedUp()` should ensure the current member is not null.");
            if (!member.Alias.Equals(currentMember.Alias, StringComparison.OrdinalIgnoreCase))
                return 403;

            var rooms = documentSession.GetRoomsByOwner(member.Id);

            return new MemberResponse(member, rooms);
        }