+1 571-297-6383 | info@sonjara.com

Chapter 9: Bundled Components

In addition to providing the components for its Application Management System, Fakoli provides some additional components out of the box that provide features commonly needed in web applications. Websites can turn these components on or off, as needed.

  • activity tracker: provides user tracking and the ability to capture feedback on the user's experience with the interface.
  • article: provides an interface to create and display articles and other content. This content can be organized in chapters and, yes, this Fakoli Guide was written using the article component.
  • attachment: provides an attachment field renderer that can be included on a web form to link the form's object (database record) to an uploaded file. For example, a purchase order can be attached to an order on the order form.
  • auto_login:  provides authenticated access to your application without requiring a manual.
    login, subject to certain defined security constraints. Auto login is useful for scheduled tasks managed through the Windows Task Manager, such as sending out email reminders to users.
  • blog: provides an interface for a user community to share information and insights relevant to the web application.
  • calendar: provides an interface to display a web application's set of events or other date-based records. The component offers a full page calendar display, a mini-calendar module, and event list views.
  • classification: enables the classification of documents as related to a set of user-defined groups and topics.
  • color-picker: provides a field renderer for users to select a color on a web form.
  • comment: allows various Fakoli and custom components to link records to one or more comments. Comments can be linked to articles, blogs, documents, etc.
  • context help: provides an interface for CMS users to define help text linked to specific fields on an AutoForm. The CMS context help list of DataItem classes and its fields are supplied by an application component by responding to the fired event "EnumerateContextHelpClasses". Components can include all, none, or a subset of its DataItem classes in response to this event. Context help is provided to application users when they mouse over the "?" icon next to the field's label on a web form.
  • dashboard: allows for user customization of the application's interface.
  • document: provides an interface for CMS users to upload, download, and manage a library of documents that may be made accessible to application users.
  • email: supports management of email templates and merge codes that can be used to send emails that are merged with data from the database. For example, an email template that provides users with a temporary login token would contain a merge code where the token's value would be inserted when the email is sent.
  • error_log:  captures error messages that were displayed by the application. Errors may be fatal such as "query failed" or nonfatal, such as "page not found". Reviewing these errors can reveal issues with your application that are not necessarily reported by users. Error logging can be turned on through CMS Web Site Configuration => Application Settings => Error Log => Enable Logging and viewed through CMS User Management => Error Log.
  • field_renderers: provides a set of Fakoli field renderers that can be used on AutoForms. Because these field renderers depend on one or more Fakoli components, they are not included in the framework's field renderer set. 
  • fileshare: extends the document component by providing an interface for a selected group of users to share document files among themselves.
  • forum:  provides a space for a user community to share information and ideas on a set of topics.
  • image: provides an interface for CMS users to upload, download, and manage a gallery of images that may be made accessible to application users. The image component also provides support for displaying images throughout the application.
  • image_picker: provides AutoForms with a field renderer for users to select an image from an image gallery or to upload an image to a gallery.
  • link_picker: provides an interface for users to select links to documents, articles, and links.
  • login: provides support for site user login password validation, forgotten password help, and user profile updates.
  • menu: provides an interface to manage and display drop-down lists or other menus on application pages.
  • mobile_settings: provides a central management class for event handlers and common functionality for the mobile component.
  • module: enables CMS users to create and update modules and link them to pages. Modules can be constructed from code files or be created within CMS as HTML-formatted text, or display menu items. Modules are typically displayed as a sidebar to a CMS or component page.
  • online_help: provides page-level application help. Help text is written in code files located in the help directory of a component.
  • optimize: allows configurable script and style optimization and compression of JavaScript.
  • page: provides an interface for creating, updating, and configuring CMS pages constructed from HTML. CMS pages can be linked to modules, menu items, and sections.
  • panel_layout: allows users to configure the panel layout on a dashboard.
  • pdf: provides support for components to generate a PDF file from a page.
  • process: provides support for managing system processes and displaying their progress to the user.
  • questionnaire: provides classes for creating sets of questions, requesting responses to the questions, and analyzing and reviewing the results in the aggregate. Questionnaires may comprise one page or tab of a workflow interface or be presented as a survey.
  • report_manager: provides an interface for users to create a customized report from the system's database. The report manager presents DataItem classes (tables) and their fields or columns; users select an entire table or specific fields to be included in the report. Users may also specify other criteria for record selection, similar to searches or filters. Report configurations can be saved for repeated use.
  • role: manages the site's user roles that determine access privileges within the application.
  • search: provides functionality for searching CMS pages, component pages, data, and other system components for matches to user-entered search criteria. Components participate in searches by responding the fired event "RegisterSearchables".
  • section: provides a mechanism to segment an application into multiple user areas, often based on user role. An application may use sections to present one look and feel for site members and another for visitors.
  • session_persistence: provides database persistence for PHP sessions.
  • settings: provides a set of configurable application options, similar to a configuration file. Application settings are managed through CMS Site Configuration => Application Settings and are separated into tabs based on their related component.
  • site: provides a mechanism to segment and application into multiple sites.
  • site_map: constructs a hierarchical map of an application for use in presenting location-based breadcrumbs.
  • slideshow: enables the display of a set of images or image gallery as a rotating slideshow. Slideshow is often used as a module within a page. It can also be inserted into a CMS page through the HTML editor.
  • social_media: provides a module that presents a set of links to an application's social media pages. These pages are configured using CMS Site Configuration => Application Settings => Social Media.
  • survey: uses the questionnaire component to provide a mechanism for sending a questionnaire to a set of email addresses and viewing the aggregated results.
  • svg_charts: enables the graphical presentation of data as histograms such as pie charts and bar graphs. This component is used by questionnaire and survey components to present a graphical view of aggregated results.
  • taxonomy: provides support for defining a set of terms that can be used for searches of data in participating components. Components can register to have their data defined in the taxonomy by responding to the fired event "RegisterTaxonomyClasses".
  • template: provides an interface for displaying the application's XML templates used to render its pages. Templates can be viewed within the CMS but must be edited by a text editor.
  • terms_and_conditions: when activated through Application Settings, requires new users to accept specified terms and conditions for a website.
  • text_lookup: enables blocks of explanatory text displayed on pages through the web site to be defined and edited through CMS.
  • user: enables management of site users. This component is usually overridden by a website to provide a customized set of user fields and handling.
  • video: provides an interface for CMS users to upload, download, and manage a gallery of videos that may be made accessible to application users. The video  component also provides support for displaying videos throughout the application.

« Chapter 8: Sections