Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

109 agenda session registrations #125

Merged
merged 47 commits into from
Mar 20, 2024

Conversation

rbento1096
Copy link
Collaborator

@rbento1096 rbento1096 commented Mar 17, 2024

closes #109
closes #111
relates to #78

Once merged we will do some graphical improvements and bug fixing if required and then we can merge into prod.

things to improve (this PR or a new issue):

  • some @todos in the sessions page (i.e. we need to open the detail in a modal for mobile) + when pressing a button it automatically selects the session (ev.preventDefault() not working for some reason...). + other minor things.

  • Some graphical improvements can be made to most lists (both entity lists as well as the lists inside entity details).

    • example: Organizations page could use a grid with ion-card dispalying the company logo. Same for Speakers
    • example: Room detail page has a list with ion-items with too much space, we can reduce margins and add more content and color to the list (session code, etc..). Also check if the links work, there is no session/sessionId page
  • to ask:

    • should we hide past sessions? maybe on toggle?
    • can users favorite sessions without registering?
    • should the session detail page include a list of the participants in the session (it has the needed data for that)

@rbento1096 rbento1096 self-assigned this Mar 17, 2024
Copy link
Owner

@uatisdeproblem uatisdeproblem left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Generally, if you find it useful, I can go back to refactor some code (as suggested in the comments) for more stability and clarity, between Wednesday and Sunday. Or I can work on other stuff, as you prefer :)

@@ -7,6 +7,7 @@ import { DynamoDB, HandledError, ResourceController } from 'idea-aws';
import { Session } from '../models/session.model';
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

suggestion: I'd rename this RC "sessionsRegistrations", not to be confused with users registrations

back-end/src/handlers/registrations.ts Outdated Show resolved Hide resolved
back-end/src/handlers/sessions.ts Outdated Show resolved Hide resolved
back-end/src/models/configurations.model.ts Outdated Show resolved Hide resolved
const date = new Date(dateToFormat);
return new Date(date.getTime() - date.getTimezoneOffset() * 60000).toISOString().slice(0, 16);
return new Date(
date.getTime() -
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After the merge I can come back to this timezone logic and simplify it, similarly to how we do in the GA app

back-end/src/models/sessionRegistration.model.ts Outdated Show resolved Hide resolved
@@ -50,6 +55,10 @@ export class Speaker extends Resource {
typeof x.organization === 'string'
? new OrganizationLinked({ organizationId: x.organization })
: new OrganizationLinked(x.organization);
this.socialMedia = {}
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After the merge I can come back with a better structure for social media, if you want (copying Papaya)

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It could be part of socialMedia

@@ -95,6 +99,10 @@ export class User extends Resource {
this.registrationForm = x.registrationForm ?? {};
if (x.registrationAt) this.registrationAt = this.clean(x.registrationAt, t => new Date(t).toISOString());
if (x.spot) this.spot = new EventSpotAttached(x.spot);
this.socialMedia = {}
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After the merge I can come back with a better structure for social media, if you want (copying Papaya)

back-end/src/models/speaker.model.ts Show resolved Hide resolved
@@ -208,4 +208,13 @@ export class AppService {
const p = this.user.permissions;
return p.isAdmin || p.canManageRegistrations || p.canManageContents;
}

formatDateShort = (date: string | Date): string => {
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i'd suggest using pipes/have a logic more similar to GA app; I can come back to this if you want

@rbento1096
Copy link
Collaborator Author

@uatisdeproblem from your review I have resolved those that have been fixed in recent commits. The other comments I agree with them but maybe it is better to make them after the event so as not to risk breaking anything. At least those related to data.

I created the issue #126 to keep track of these. If instead, you feel that there is no risk and they are easily doable in the next issues (the pipes for example). feel free to do it, just let me know so I can resolve the comments here :)

Thank you a lot for your help!

@rbento1096 rbento1096 merged commit d20ea1e into development Mar 20, 2024
@rbento1096 rbento1096 deleted the 109-agenda-session-registrations branch March 20, 2024 21:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants