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

[Feature] Better tracking of collection changes with products #12

Open
Infinitay opened this issue Aug 13, 2024 · 2 comments
Open

[Feature] Better tracking of collection changes with products #12

Infinitay opened this issue Aug 13, 2024 · 2 comments
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@Infinitay
Copy link
Owner

Infinitay commented Aug 13, 2024

Discord moved all the products found within the "VALORANT" (sku: 1220513972189663413) collection into an entirely new "VALORANT Champions" (sku: 1265375293397270650) collection. They moved the existing 8 products (5 avatar, 3 effect) from the "VALORANT" collection into the new "VALORANT Champions" collection, and further added 7 more products (2 bundles, 3 avatar, 2 effect). Additionally, there is a new property for a collection so review it and update it. I think it was a modal_bg property but as writing this up in bed and can't confirm.

Two things happened that are noteworthy:

  1. Collections didn't change much. The new collection was added, and it didn't recognize there was a collection shift.
  2. Profile effects changed and deleted the "Valorant" collection for the effects due to all of the effects being found in a new category.

Actions (collections):

  • Do a more through check against the products similar to how we check for uncategorized changes
  • Start tracking and export changes
    • Array of objects with properties "previousCollection" and "newCollection"
    • meta I should have kept the separate Collections export named index file... now I'll have to do more automated code generation for the index file

Actions (effects):

  • Don't delete the old file if there was a category shift

Additional Information

  • Consider the benefit of keeping the old collection or profile effects
  • Consider how to display the changes on the frontend
    • Modal prompting the user which data they want to view?
    • What about multiple nested changes?
    • Would it be better to group similar collections?
      • How would we group it? Listing separate buttons for all the collections still?
      • What if instead we create a button for changed collections that lists all the names on the as one button, but when you click it, you get a modal popup prompting you to choose which collection you want to view?
        • This takes care of multiple nested collections
        • Display multiple pieces of information to the user to let them know things like sku difference and expiration date at the least
        • Condenses the changes into essentially one button, although it will be bigger than the rest
          • How about keeping it as one button but changing the button color to yellow or adding a yellow sign by it just to indicate there are changes

Side note because I need to get it off my chest, Discord why the hell would you create an entirely new category instead of just modifying the existing one

@Infinitay
Copy link
Owner Author

Infinitay commented Aug 16, 2024

~~So currently stuck on implementing this as a part of #13. The primary issue is that I don't know what I want to do. ~~

  • If an existing collection gets replaced, should it be listed on the list of collections?
    • Well of course, this is an archive project after all
  • How will people know what replaced what?
    • Linked collections are good, but now we need a way to track active collections

Here is the new plan for the future after #13

  1. Modify collections and both collections and user effects to have active collections
    • Better yet, have active, expired (the main/last active collection/latest replacement collection), archived (replaced)
  2. Perhaps it would be a good idea at this point to modify the JSON data for both collections and user effects to wrap my own properties such as variables to track my own last updated
    • Could also store "status" (active, expired, archived) here

Perhaps now would be a good time to maybe move away from JSON data and instead use a proper database?

Pros:
- (Hopefully) cleaner code for data generation and modification
- Better and more tracking of data
- changes tables to track specific property changes
- Easier to access data than reading from JSON and generating an index file

Cons
- Hosting (database and website)
- Depending on what I choose to store myself in addition to the data, the database could grow large
- Refactor required and would take up lots of time

@Infinitay Infinitay added enhancement New feature or request help wanted Extra attention is needed labels Aug 17, 2024
@Infinitay
Copy link
Owner Author

Another consideration to have is individual product changes within a collection. Since this is an archive project, would it be better to display every single product (active and archived (removed)) within a collection, or would it be better to show collections in their last known up-to-date state with regards to products?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant