Our Company is soon distributing a couple of web apps, using PWA.
When the user installes the PWA on a desktop or phone, we would like to change the icon based on the company logo stored in the database, so that the icons on tabs, desktops, etc can be customized to the company logo from which the user originates.
I've looked at the Extensibility Configuration, but there we are not able to any form of checks against the database.
Anyone know if this is even possible without creating a separate application for each company?.
You can created a Tenant_Extended (or Company) table within outsytems that you maintain yourself. Within the Tenant-Extended Table:- Create a reference ID to TenantId provided in the OutSystems Tenant Systems database and a binary attribute to store your icon.- Create a screen and CRUD actions to upload and save (your icon for example) to the Tenant_Extended table.- Load the Tenant_Extended data (to retrieve your icon) and load your icon.This brings you to the point where you have storage for the icon, but your initial screenload will need a way to determine the TenantId so your aggregate knows which extended data to return. I use a dedicated URL for each Company/Client that points to a singular outsystems application. I look up the URL used to access the app to lookup the tenantid and display the client/company specific branding (logos, icons, colors etc)
Within a react web/destkop application I have it setup this way, changing logo's etc within screens, generating pdf's etc.
The Icon I'm trying to change is the Icon that appears on the homescreen on an iPhone or Andriod phone after you add a PWA to the home screen on the actual phone.