ymcatwincities / openy

The Open Y platform. See README.md below
https://openy.org
GNU General Public License v3.0
49 stars 111 forks source link

GroupEx Pro Integration Refactoring #1021

Open ddrozdik opened 6 years ago

ddrozdik commented 6 years ago

Currently, there are 5 modules that provide different features to work with GroupEx Pro. For example:

The first one is fully independent but it provides settings to configure what GroupEx account to use. The second and the third modules these two modules were backporteed to Open Y from other websites and do integration with API and provide some pages, and features like caching requests. The fourth module reuses some of the features from the second module, but also provides some own features needed only for Digital Signage.

At the moment, in case I want to use openy_digital_signage_groupex_schedule I can't do that without enabling openy_group_schedules and groupex_form_cache, even if I do not want to use features from those modules.

I would like to recommend to do refactoring of the modules openy_group_schedules and groupex_form_cache to move out code needed for API requests to a separate module, move out code needed for GroupEx mapping entities to a separate module, and make all of them decoupled as much as possible, so other modules could add small modules as dependencies instead of these two big modules. Also, would be great to organize al modules that work with GroupEx into one module, which will provide submodules with different features, see example:

cc @podarok, @YMCA-GTC , @Sanchiz

YMCA-GTC commented 6 years ago

@ddrozdik Will this refactoring work be handled by 5J with the Decoupling work?

ddrozdik commented 6 years ago

@YMCA-GTC no, it will not. This is something big and will take some time to refactor carefully. Also first of all this task require detailed architecture to avoid issues in the future.

podarok commented 4 years ago

With PEF is there any demand to keep embedded GroupEx PRO integration? YGTC team if almost done with Syncer implementation for PEF - AB test will start soon and code will be published afterward. ALso we found a bug in GroupEX PRO which should be fixed by GroupEx

ddrozdik commented 4 years ago

I think with PEF - GroupEx integration there is no need for embedded_groupexpro_schedule module. But anyway refactoring is needed. Also according to latest discussions of moving 3rd party integrations like ActiveNet, Daxko, GroupEx, etc to separated repositories make sense to refactor code a bit and leave only really necessary modules.

podarok commented 4 years ago

HI @ddrozdik With @danylevskyi we need to check what is left after CMS optimization project 5Jars did for YGTC and what was improved by our team during AB test of Schedules for YGTC. We should verify if "New Schedules" from YGTC backported fully or not and backport it into OpenY. Then I'll record a video tutorial how to set Syncer service for proper classes pulling from GroupEx PRO into OpenY.

Refactoring should be justified by business demand. Refactoring for the refactoring makes no sense. Currently, we have no that mush information about the frequency of usage Groupex PRO( Daxko ) embedded widgets, this should be covered by analytics we put in OpenY recently. @paige-kiecker expects us to have at least some data end of 2020 when a majority of Ys updated to the version, which adds analytics. Given the fact embedded schedule probably used by small Ys - that timeframe could be extended because upgrading them could be postponed. Can we discuss this task, created ~2 years ago on some of our Weekly calls with 5Jars and what is relevant today for the next steps to be taken? Thank you

sarah-halby commented 3 years ago

More information is needed to create a business case for this item due to its size and complexity. @podarok would like to discuss this as a future addition for Activity Finder enhancements in Q2 - Q3 of 2021. @ymcagtc FYI for Activity Finder planning.