The Company

The primary aim of the Success Academy is to develop quality office parks with a professional environment that contributes to the running of a successful business. To this end, they have private, internal functionality that allows tenants to view other companies in the business park, log maintenance requests and communicate with one another.

The Challenge

As a long standing client of ours, we perform ongoing improvements on the Success Academy website. The latest improvements to the site involved upgrading their maintenance request logging system for tenants, as well as improving the directory of all company tenants, the tenants’ My Account dashboard and a booking calendar for the business meeting room.

The Solution

Login system
One of the major changes in the latest upgrades to the Success Academy website is that now the whole site is behind a “login gate”, powered by LSX Login.

When registering, a user must fill in a form (made with Caldera Forms) that captures their details. These users, who are employees of the tenants (companies residing in a Success Academy business park) need to then have their details reviewed and assigned to correct company.

Once approved, a user who logs in is then taken to their WooCommerce My Account page.
The My Account dashboard has a few calls to action: These are the most important client features on-site: to submit a maintenance request and to book a boardroom. The dashboard also has ability for the Success Academy to put important announcements or alerts up for their users’ attention.

Behind the scenes, we developed a solution which allows for the mass import of users. This was needed because we had to migrate from old system. It was also necessary as there will often be times where tenants will receive batches of new users who have registered who need to be imported in bulk, saving administrators from having to imports users one by one.

Business Directory

We also created a company (tenant) import system that imports businesses into the Success Academy business directory, powered by LSX Business Directories.

The single profiles for each company has many fields, such as each company’s industry, contact details, website, what business park they reside in, what unit number they are, etc. This information is maintained by the Success Academy, not by the tenants, to ensure that the details are always kept up to date and accurate, keeping it a valuable, reliable resource for all tenants.
There are 7 business parks.

When logged in, any user can search by whatever criteria they like to find other businesses/tenants in a Success Academy business park.

Maintenance Request Logging System

We created an advanced custom maintenance dashboard for the Success Academy. It uses FacetWP to sort all the details of each request in each column:

  • ID
  • Company
  • Business park Unit
  • Business park floor
  • Maintenance Request
  • Designation
  • Days waiting
  • Request status
  • Completed logged
  • Logged by

Each maintenance request can be clicked on, which opens it in a lightbox which shows a log with threaded replies to each request.
Based on the maintenance team’s roles and responsibilities, they are added to groups and certain maintenance teams receive certain alerts.

There are sets of categories for maintenance requests (lighting, painting, parking, ec). Once a request is submitted it then generates a request number. Nearly 30,000 requests gone through the system so far.
We also ensured that requests can be logged on a teammate’s behalf, for situations such as a PA logging a request on a boss’s behalf.

For the maintenance requests we also built separate views to look at just Pending or just Resolved requests, two very important screens for the maintenance teams to keep an eye on. The system can set views – filtering by company, filtering by date range, filtering by category – and then users are able to print out just that filtered selection of requests in print view. Maintenance request logs can also be exported to CSV.

Boardroom Booking Calendar

The Success Academy Business Centres are rentable meeting rooms / boardrooms. Users can fill in a form and it’ll ask for the company they’re in, it then adds that to the list, auto-populating the booking with that company’s the address. Users put in their contact details and desired booking times, desired room type (large seaters, small seaters, with many locations to choose from). It then shows up on a public Google Calendar that all tenants can check to see when times and spaces are available.

As a long-time client of LightSpeed’s, it was important to us to keep them happy with a site that was visually and functionally modern and impressive. The new features added to the site as well as the more thought-through and secure login system makes the site more useful and more intuitive for both site admins and Success Academy tenants.

Related Projects

Men’s Health Belly Off

Design & Development, WooCommerce

Tranq It Easy


Speed Shred


Cape Town Tourism

Design & Development, Tour Operators

Simple Books

Design & Development, WooCommerce

Skeleton Coast Safaris

Design & Development, Tour Operators

[wpforms id="34770" title="false" description="false"]
<div class="wpforms-container " id="wpforms-34770"><form id="wpforms-form-34770" class="wpforms-validate wpforms-form" data-formid="34770" method="post" enctype="multipart/form-data" action="/portfolio/success-academy/"><noscript class="wpforms-error-noscript">Please enable JavaScript in your browser to complete this form.</noscript><div class="wpforms-field-container"><div id="wpforms-34770-field_1-container" class="wpforms-field wpforms-field-text" data-field-id="1"><label class="wpforms-field-label wpforms-label-hide" for="wpforms-34770-field_1">Name <span class="wpforms-required-label">*</span></label><input type="text" id="wpforms-34770-field_1" class="wpforms-field-large wpforms-field-required" name="wpforms[fields][1]" placeholder="Name *" required></div><div id="wpforms-34770-field_2-container" class="wpforms-field wpforms-field-email" data-field-id="2"><label class="wpforms-field-label wpforms-label-hide" for="wpforms-34770-field_2">Email Address <span class="wpforms-required-label">*</span></label><input type="email" id="wpforms-34770-field_2" class="wpforms-field-large wpforms-field-required" name="wpforms[fields][2]" placeholder="Email Address *" required></div><div id="wpforms-34770-field_8-container" class="wpforms-field wpforms-field-phone" data-field-id="8"><label class="wpforms-field-label wpforms-label-hide" for="wpforms-34770-field_8">Phone</label><input type="tel" id="wpforms-34770-field_8" class="wpforms-field-large" data-rule-int-phone-field="true" name="wpforms[fields][8]" placeholder="Phone" ></div><div id="wpforms-34770-field_9-container" class="wpforms-field wpforms-field-textarea" data-field-id="9"><label class="wpforms-field-label wpforms-label-hide" for="wpforms-34770-field_9">Message <span class="wpforms-required-label">*</span></label><textarea id="wpforms-34770-field_9" class="wpforms-field-large wpforms-field-required" name="wpforms[fields][9]" placeholder="Message" required></textarea></div><div id="wpforms-34770-field_7-container" class="wpforms-field wpforms-field-hidden" data-field-id="7"><input type="hidden" id="wpforms-34770-field_7" name="wpforms[fields][7]" value="The Success Academy:"></div><div id="wpforms-34770-field_5-container" class="wpforms-field wpforms-field-checkbox" data-field-id="5"><label class="wpforms-field-label wpforms-label-hide" for="wpforms-34770-field_5">Subscribe to our Newsletter</label><ul id="wpforms-34770-field_5"><li class="choice-1 depth-1"><input type="checkbox" id="wpforms-34770-field_5_1" name="wpforms[fields][5][]" value="Subscribe to our Newsletter" ><label class="wpforms-field-label-inline" for="wpforms-34770-field_5_1">Subscribe to our Newsletter</label></li></ul></div></div><div class="wpforms-field wpforms-field-hp"><label for="wpforms-34770-field-hp" class="wpforms-field-label">Website</label><input type="text" name="wpforms[hp]" id="wpforms-34770-field-hp" class="wpforms-field-medium"></div><input type="hidden" name="wpforms[recaptcha]" value=""><div class="wpforms-submit-container" ><input type="hidden" name="wpforms[id]" value="34770"><input type="hidden" name="wpforms[author]" value="9"><input type="hidden" name="wpforms[post_id]" value="27849"><button type="submit" name="wpforms[submit]" class="wpforms-submit om-trigger-conversion btn cta-btn btn-full" id="wpforms-submit-34770" value="wpforms-submit" aria-live="assertive" data-alt-text="Sending..." data-submit-text="LET&#039;S TALK!">LET&#039;S TALK!</button></div></form></div> <!-- .wpforms-container -->
[wpforms id="95" title="false" description="false"]
<div class="wpforms-container " id="wpforms-95"><form id="wpforms-form-95" class="wpforms-validate wpforms-form" data-formid="95" method="post" enctype="multipart/form-data" action="/portfolio/success-academy/"><noscript class="wpforms-error-noscript">Please enable JavaScript in your browser to complete this form.</noscript><div class="wpforms-field-container"><div id="wpforms-95-field_3-container" class="wpforms-field wpforms-field-text" data-field-id="3"><label class="wpforms-field-label wpforms-label-hide" for="wpforms-95-field_3">Name <span class="wpforms-required-label">*</span></label><input type="text" id="wpforms-95-field_3" class="wpforms-field-large wpforms-field-required" name="wpforms[fields][3]" placeholder="Name *" required></div><div id="wpforms-95-field_1-container" class="wpforms-field wpforms-field-email" data-field-id="1"><label class="wpforms-field-label wpforms-label-hide" for="wpforms-95-field_1">Email Address <span class="wpforms-required-label">*</span></label><input type="email" id="wpforms-95-field_1" class="wpforms-field-large wpforms-field-required" name="wpforms[fields][1]" placeholder="Email Address *" required></div><div id="wpforms-95-field_4-container" class="wpforms-field wpforms-field-number" data-field-id="4"><label class="wpforms-field-label wpforms-label-hide" for="wpforms-95-field_4">Contact Number</label><input type="number" pattern="\d*" id="wpforms-95-field_4" class="wpforms-field-large" name="wpforms[fields][4]" placeholder="Contact Number" ></div><div id="wpforms-95-field_5-container" class="wpforms-field wpforms-field-text" data-field-id="5"><label class="wpforms-field-label wpforms-label-hide" for="wpforms-95-field_5">Website</label><input type="text" id="wpforms-95-field_5" class="wpforms-field-large" name="wpforms[fields][5]" placeholder="" ></div><div id="wpforms-95-field_2-container" class="wpforms-field wpforms-field-textarea" data-field-id="2"><label class="wpforms-field-label wpforms-label-hide" for="wpforms-95-field_2">Additonal info or message <span class="wpforms-required-label">*</span></label><textarea id="wpforms-95-field_2" class="wpforms-field-medium wpforms-field-required" name="wpforms[fields][2]" placeholder="Additional info or message" required></textarea></div><div id="wpforms-95-field_6-container" class="wpforms-field wpforms-field-checkbox" data-field-id="6"><label class="wpforms-field-label wpforms-label-hide" for="wpforms-95-field_6">Checkboxes</label><ul id="wpforms-95-field_6"><li class="choice-1 depth-1"><input type="checkbox" id="wpforms-95-field_6_1" name="wpforms[fields][6][]" value="Subscribe to our Newsletter" ><label class="wpforms-field-label-inline" for="wpforms-95-field_6_1">Subscribe to our Newsletter</label></li></ul></div></div><div class="wpforms-field wpforms-field-hp"><label for="wpforms-95-field-hp" class="wpforms-field-label">Message</label><input type="text" name="wpforms[hp]" id="wpforms-95-field-hp" class="wpforms-field-medium"></div><input type="hidden" name="wpforms[recaptcha]" value=""><div class="wpforms-submit-container" ><input type="hidden" name="wpforms[id]" value="95"><input type="hidden" name="wpforms[author]" value="9"><input type="hidden" name="wpforms[post_id]" value="27849"><button type="submit" name="wpforms[submit]" class="wpforms-submit btn btn-full om-trigger-conversion" id="wpforms-submit-95" value="wpforms-submit" aria-live="assertive" data-alt-text="Sending..." data-submit-text="Send Message">Send Message</button></div></form></div> <!-- .wpforms-container -->