Summary
Currently SlideImage is handling the logic for 3 slide types. To improve ease of maintenance as well as better extensibility, it may be beneficial to refactor the structure to have a base Slide class from which other slide types extend from.
This would also allow for easier template management as each class would have a template to render from more inline with the templating system.
Suggested Structure
The following structure would be included in the first iteration of the refactor.
- Slide: Base class that hold shared data and any methods across sub classes
- TextSlide: A basic slide that has a Title and a limited WYSIWYG.
- ImageSlide: This slide includes an Image in addition to a Title and limited WYSIWYG
- VideoSlide: This slide includes a native video upload field. This is separate from oEmbed content types.
- oEmbedSlide: This slide allows for the use of videos from services such as YouTube and Vimeo.
Additional Considerations
Most slides would share a Title and limited WYSIWYG. This could be included in the base class, or applied by a DataExtension.
Summary
Currently
SlideImageis handling the logic for 3 slide types. To improve ease of maintenance as well as better extensibility, it may be beneficial to refactor the structure to have a base Slide class from which other slide types extend from.This would also allow for easier template management as each class would have a template to render from more inline with the templating system.
Suggested Structure
The following structure would be included in the first iteration of the refactor.
Additional Considerations
Most slides would share a Title and limited WYSIWYG. This could be included in the base class, or applied by a
DataExtension.