Skip to content

Aptify eBusiness Architecture

VIDEO TRANSCRIPT | Recorded: 2022-01-27 | Verify against current system state

Abstract

Comprehensive overview of the AANP my.aanp.org eBusiness site architecture built on Aptify with Sitefinity CMS. Covers the ASP.NET user control structure, Bootstrap reskinning efforts, DLL dependency challenges, SAML SSO integration, and plans to migrate to newer technology. Explains why direct SQL updates are prohibited by Aptify and how the team built a custom API to avoid DLL proliferation across applications.

Key Procedures

  • Navigate eBusiness code structure in GitHub repository
  • Identify custom controls by __C (Aptify consulting) or __AANP (internal) naming convention
  • Access Sitefinity backend to view control placement on pages
  • Drag and drop Aptify custom controls from Sitefinity widget panel
  • Work with VB files and ASPX pages directly on development server (cannot build solution locally)
  • Manage DLL dependencies in the bin folder
  • Configure SAML SSO through marketplace plugin
  • Use Windows Event Log for error monitoring (not Sentry/ELMAH)
  • Publish/unpublish pages in Sitefinity for security

Notable Statements

  • 0:00:23 "Aptify gave us this e-business site, but it was very basic and very old school. They had this site called Ice Coffee that they used as their template."
  • 0:02:36 "You can't really build it, it'll fail. This includes the Aptify consulting team. They never really pulled it up as a solution."
  • 0:04:49 "Any type of custom built controls has an underscore underscore C. If you see a folder or file name that has __C, it was built by Aptify development team."
  • 0:05:17 "We name them underscore underscore A-A-N-P."
  • 0:11:33 "A lot of times like login, you say okay here's the login control, but then you open up the login control and it's just a reference to another control."
  • 0:15:37 "The profile page is our biggest issue at the moment. It's real cluge... thousands of lines long."
  • 0:21:58 "Aptify says we're asking that you don't just process an update statement and update the person's name. We want you to go through our DLLs."
  • 0:22:24 "Our application is affected by all of these DLLs that we had to pull over into the new site. And so it takes forever to pull up."
  • 0:23:33 "We decided to create an API and a core so that we only have to call the API and update all of these DLLs in one place."
  • 0:24:18 "They say that if we update anything with an update statement or delete, we've voided our warranty."
  • 0:33:47 "eBusiness has its own log. It pushes to the windows event log manager... There's no warning to you."
  • 0:35:36 "I started submitting them to Aptify tech people and they would come back and say, yeah, that's just going to be there. You can just ignore that."
  • 0:40:06 "Aptify, they consider the secret sauce of their application to be their database structure and their metadata." - Matt

Systems & Configurations

Systems Mentioned

  • Aptify eBusiness (member portal)
  • Sitefinity CMS (content management)
  • GitHub (source control)
  • SQL Server (database)
  • SendGrid (email)
  • Sentry/ELMAH (error logging - not used by eBusiness)
  • Windows Event Log (eBusiness logging)
  • Bootstrap/Foundation (CSS frameworks)
  • SAML SSO plugin (Component Source marketplace)
  • Mighty Citizen (redesign partner)

Specific Configurations

Item Value/Setting Timestamp Notes
Custom Control Suffix __C 0:04:49 Aptify consulting built
AANP Custom Suffix __AANP 0:05:17 Internal AANP built
File Extensions .ascx, .ascx.vb 0:06:01 ASP.NET user controls
Site URL my.aanp.org 0:06:45 Member portal
CSS Framework Foundation 0:29:20 Required for account site styling
Owner Community Brands 0:41:18 Acquired Aptify ~2020

Credentials/Access Mentioned

  • GitHub repository access for eBusiness code
  • Sitefinity backend login
  • Windows Event Log access on server

Errors & Troubleshooting

  • Error: Thousands of errors in Windows Event Log
  • Cause: eBusiness logging everything including expected states
  • Resolution: Submitted to Aptify support, many marked as "can ignore"
  • Timestamp: 0:33:55

  • Error: DLL version mismatch across applications

  • Cause: Process changes in Aptify compile new DLLs not pushed to eBusiness
  • Resolution: Created central API to manage DLL dependencies in one place
  • Timestamp: 0:22:44

Transcript Gaps & Quality Notes

  • Multiple speakers including Matt (developer) and Keith (new team member)
  • Some screen share references not captured ("if you look here")
  • Personal conversation about Keith's cat relocation at end
  • Recording covers onboarding/overview context for new team member
  • Some UI navigation steps reference visual elements not in transcript