Config - AppDaddy-Software-Solutions-Inc/framework-markup-language GitHub Wiki
When the user connects an app to the FML store (mobile and desktop), or navigates to a web site in their browser, the FML engine first looks for the file config.xml in order to configure the application. Config.xml contains information on which page to load first, which page to use for login purposes, how pages refresh as well as default theme information.
The properties are defined below. All properties are defined a XML elements and are defined in uppercase.
Name | Default | Description |
---|---|---|
COMPANY | The name of the company | |
NAME | The app's name. This is used in various spots within FML. | |
ICON | The url of the default icon. This is used in the mobile FML store when a new application is added. | |
ICON_LIGHT | ICON | The url of the icon to use when the application theme is set to light (default). |
ICON_DARK | ICON | The url of the icon to use when the application theme is set to dark. |
BRIGHTNESS | light | Brightness set the defualt theme brightness and can be set to either light or dark. This value can also be changed by calling theme("brightness",value). |
COLOR | The default theme color. This value can also be changed calling by theme("color",value). | |
FONT | ICON | Font is the default theme font. |
TRANSITION | platform | The default page transition when navigating between pages. Note, for mobile apps on IOS, using anytghing other than platform may defeat back swipe when naigating back a page. Valid values are platform, none, fade, slide, slideright, slideleft, zoom, and rotate. |
SPLASH | The url of the default splash image. This is displayed when the application is lauched (desktop and mobile) or on initial navigation to the web page. If not specified, no splash screen od displayed. | |
SPLASH_BACKGROUND | The color of the splash background. If not specified the default THEME default surface color is used. | |
SPLASH_WIDTH | The width of the spalsh image. If not supplied, the SPLASH image is displayed full size. | |
SPLASH_DURATION | 2 | The minium number of seconds to display the splash screen. When set to "0", or when SPLASH has not been set, no splash screen od displayed. |
REFRESH | false | If the page template is should be reloaded on each and every visit. When set to true, every time the page is opened, FML attempts to replas the page from the server. When set to false, the page is only loaded on the users first visit to the page, unless it has not already been cached from a previous session. |
SINGLE_PAGE_APPLICATION | false | If the user can navigate to individual pages without going through the home page. When set to true, FML will not allow navigation to a page other than the HOME_PAGE unless the page header is marked linkable="true". When set to false (the dafault), FML will allow navigation to a sub-page other than the HOME_PAGE unless the page header is marked linkable="false". |
START_PAGE | main.xml | The default start page. If not specified, main.xml is used unless the user specifies the start page in the app's url when a new app is added (mobile and desktop) or in the url when navigating in the browser. |
LOGIN_PAGE | The page to launch when the user has not been authenticated and the page template header specifies rights="". If not specified or the page template cannot be loaded, the ERROR_PAGE is displayed. The login page must provide an/all logic to authenticate the user and return a valid JWT json web token including a rights claim in the public section of the JWT. | |
ERROR_PAGE | The page to launch when an error occurs. If not specified, the built in error template is displayed along with the error encountered. | |
MIRROR | The default api end point, which when called by the FML client service, returns a complete list of all assets used by the application including templates and images. The listing must include both the assets url as well as its last modified date. The mirror service is used for caching templates and images for offline use and/or to improve app performance. This only applies on mobile and is only used when REFRESH is true. | |
HASHKEY | The default hash key for encryption when using the hash function. | |
FIREBASE_API_KEY | The firebase api key when using firebase social media login | |
FIREBASE_AUTH_DOMAIN | The firebase authenticating domain name when using firebase social media login |
<CONFIG>
<COMPANY value="AppDaddt Software"/>
<NAME value="FML"/>
<ICON value="resources/images/appdaddy-head-color.svg"/>
<ICON_LIGHT value="resources/images/appdaddy-black.svg"/>
<ICON_DARK value="resources/images/appdaddy-white.svg"/>
<!-- Splash Screen Settings -->
<SPLASH value="images/logo.svg"/>
<SPLASH_WIDTH value="25%"/>
<SPLASH_DURATION value="2"/>
<SPLASH_BACKGROUND value="#FDFCF6"/>
<!-- Theme -->
<COLOR value="#47c4fb"/>
<BRIGHTNESS value="light"/> <!-- dark/light/system/platform -->
<FONT value="Roboto"/> <!-- Case Sensitive https://fonts.google.com/ Fonts -->
<TRANSITION value="platform"/>
<!-- Template Pages and Page Behavior -->
<HOME_PAGE value="resources/main.xml"/>
<LOGIN_PAGE value="templates/login.xml"/>
<REFRESH value="true"/>
<SINGLE_PAGE_APPLICATION value="false"/>
<!-- Mirror API end point -->
<MIRROR value="resources/list"/>
<!-- Firebase Authentication -->
<FIREBASE_API_KEY value="your firebase api key here"/>
<FIREBASE_AUTH_DOMAIN value="immersive-learning-platform.firebaseapp.com"/>
</CONFIG>