JH

Jon Haring

Sinclair DINOPAY Offers

A campaign-ready promotional page built within a legacy Drupal platform—combining automatically scheduled offers with a searchable, category-based support experience.

MY ROLE

Front-End Developer

PLATFORM

Drupal

FOCUS

Custom Entities, Scheduled Content, Interactive Development

SCOPE

Landing Page and CMS Enhancement
Sinclair Oil Dinopay Offers

The Challenge

Sinclair needed a central destination for current DINOPAY promotions, redemption instructions, and answers to frequently asked questions. The offers change regularly and include specific activation periods, promotional artwork, calls to action, and legal details. Managing every launch and expiration manually would create unnecessary work and increase the risk of outdated offers remaining visible. The page also had to be developed within an established legacy Drupal website with limited documentation and no access to the original development team.

What I Owned

I investigated the existing Drupal architecture, created a custom entity system for scheduled offers, and developed the complete front-end experience.

I also built the categorized FAQ interface, responsive layouts, offer-detail interactions, and supporting content sections used to explain how DINOPAY promotions work.

01 / LEGACY CMS DEVELOPMENT

Learned and safely extended an established Drupal codebase with limited documentation.

02 / SCHEDULED OFFER SYSTEM

Created custom offer entities with start and end dates that control when each promotion appears and disappears.

03 / INTERACTIVE FAQ

Built a categorized FAQ system that makes a large collection of support content easier to navigate.

04 / RESPONSIVE IMPLEMENTATION

Developed the page and its interactive elements for desktop, tablet, and mobile.

The Approach

Make frequently changing promotions easier to manage—and easier for customers to understand.

A flexible DINOPAY destination that gives Sinclair a more reliable way to manage changing promotions and gives customers one clear place to understand available offers. The scheduled content system reduces repetitive campaign maintenance and helps prevent expired promotions from remaining online. The categorized FAQ turns a large support library into an approachable self-service resource. The project also demonstrates my ability to step into an unfamiliar legacy codebase, understand how it works, and add meaningful new functionality without rebuilding the entire system.

01 / Investigate

Understand the existing system

With limited project documentation and no access to the original developers, I first traced how the existing Drupal entities, content structures, templates, and theme components worked together.

I used available documentation, hands-on testing, and AI-assisted development to interpret the legacy architecture and find an approach that extended the site without disrupting its established structure.

02 / Automate

Let the CMS manage the campaign schedule

I created custom offer entities containing the content, imagery, links, legal details, and scheduling information needed for each promotion.

Editors can prepare an offer in advance and assign its active dates. The page then automatically displays it during the correct promotional period and removes it when the offer expires.

03 / Simplify

Turn support content into a usable tool

The page needed to answer a wide range of questions covering connectivity, locations, offers, payments, Mobile Advantage, security, support, and instructional videos.

I organized the content into clear categories and designed an interactive FAQ that helps visitors narrow the information without scrolling through one enormous list.

Inside the Build

Scheduled Promotional Offers

I developed custom Drupal entities with configurable publish and unpublish dates for each promotion.

This allows Sinclair to prepare campaigns ahead of time while reducing the manual work and risk involved in launching and removing time-sensitive offers.

Categorized FAQ Experience

I built an interactive FAQ system that organizes a substantial amount of support content into selectable categories.

Visitors can quickly focus on the topic they need, while Sinclair can continue managing the questions and answers through Drupal.

AI-assisted Legacy Development

I used ChatGPT as a technical research and troubleshooting partner while working through the lightly documented legacy Drupal build.

The AI-assisted process helped me interpret existing development patterns, understand unfamiliar entity and template relationships, and evaluate possible solutions more efficiently. Every change was still reviewed, implemented, and tested within the actual website environment.

The Result

A flexible DINOPAY destination that gives Sinclair a more reliable way to manage changing promotions and gives customers one clear place to understand available offers. The scheduled content system reduces repetitive campaign maintenance and helps prevent expired promotions from remaining online. The categorized FAQ turns a large support library into an approachable self-service resource. The project also demonstrates my ability to step into an unfamiliar legacy codebase, understand how it works, and add meaningful new functionality without rebuilding the entire system.
Visit the Site