Documentation
Introductory
- About Xataface
- Getting Started Tutorial
- How to build a PHP MySQL Application with 4 lines of code
- Troubleshooting
- Getting Started: Most Common Mistakes
Reference
- API Docs
- conf.ini file directives
- fields.ini file directives
- valuelists.ini file directives
- relationships.ini file directives
- Delegate class methods
- Application Delegate Class
- permissions.ini file directives
- actions.ini file directives
- User Preferences - options for customizing the application further via the getPreferences() method.
- templates
- URL Conventions - Learn how to use Xataface’s URL conventions to form URLs that return exactly the result set that you want.
- Roadmap - What is planned for the next releases of Xataface
Cook Book
- Customizing Theme Based on IP Address - An article on storing IP addresses in the database and showing users a different theme depending on which range of IP addresses they are connecting from.
By Topic
Installation
- Xataface Installation Instructions - This document explains how to install Xataface on your system. It does not describe how to create an application with Xataface.
- Creating your first App - How to create an application using Xataface (from the Getting Started Tutorial)
- About Xataface - Quick overview of Xataface. Includes a 6 step example of creating an application with Xataface.
Configuration
- Customizing field labels, descriptions, and widgets - This document explains how to customize some basic aspects of your application’s edit forms. (From the Getting Started tutorial).
- Using Valuelists - How to use valuelists to set up options for your select lists and checkbox groups.
- Configuring and customizing the list tab - This document explains how to customize the display of the list tab using INI files, templates, and delegate classes.
Internationalization
- Contribute to Xataface Translation Project - We need translators to help us keep the Xataface translations up to date. This page shows how you can help.
- Internationalization with Xataface (tutorial)
- How to internationalize your application (how to) - Xataface 0.6 contains a LanguageTool class that allows your applications to be presented in multiple languages
- How to use other translations - Xataface 0.7 includes German and French translations. This document explains how to allow your application to use these and other translations, rather than the default English translation.
- How to enable unicode support - As of Xataface 0.6, unicode is fully supported so that your dataface application will work with any and multiple languages simultaneously.
- Download latest language files out of SVN - If you want to make sure that you have the latest translations, you can download them from SVN and place them into your xataface lang directory.
User Interface Customization
- User Preferences - You can hide, show, enable, and disable features of the application selectively.
- Changing the Look and Feel - Change the way your application looks by adding custom headers, footers, and sections, and by overriding the default templates with your own custom templates. (From the Getting Started tutorial).
- templates
- Customizing the Xataface look and feel tutorial
- Customizing the look and feel of an element in the list view - Personnalize the aspect of each part of your list according to its content.
- How to include custom javascripts and stylesheets - Use the custom_javascripts and custom_stylesheets blocks to include your own custom javascript and CSS files in your application.
- How to hide the search box - The full-text search box that appears in the upper right can easily be removed.
- Configuring and customizing the list tab - This document explains how to customize the display of the list tab using INI files, templates, and delegate classes.
- How to Add Custom Sections to View Tab - The View tab in a Xataface application can be configured in many ways. This tutorial shows you how to add your own custom sections to the view tab.
- Creating a Dashboard - Create a dashboard action for your users to so that they have a logical starting point in your application.
- Grafted fields - Add a grafted field to your table for user convenience. You can use it also to be able to sort columns with relative tables content.
- Clean the html for the export - Clean the HTML tags and entities for the export in CSV or XML.
Using the API
- Introduction to the Xataface API - A short introduction to the classes, methods, and functions available in the Xataface API.
- How to define custom serialization for fields
Security
- authentication - Overview of Xataface Authentication
- registration form - Enabling User Registration in Xataface
- permissions.ini file - Reference of the permissions.ini file directives.
- Permissions - Use sessions and delegate classes to define permissions at the record and field level. (From the Getting Started tutorial).
- Cached permissions - Use cached perms for complex queries inside getPermissions()
- Delegate class methods - Permissions-related functions
- Relationship Permissions - Guide to permissions on related records.
- How to disallow access to tables
- site_with_backoffice - A site with a backoffice without obligation to log in
- Security Filters - Use security filters to block users from seeing certain records.
- How to granulate permissions on each field - Decide for each field who can edit, read…
- no_access_text - Replace the default NO ACCESS permission text with another text.
- LDAP or Active Directory - How to authenticate users with LDAP or Active Directory…
Performance
- Using Query Caching - Query caching can drastically improve performance of busy applications with large databases. This article explains how to enable this caching in your Xataface application.
- _output_cache - Xataface does quite a bit of heavy lifting on each page request. If your application is getting a lot of traffic that is slowing your server down, you may want to look at enabling the Xataface output cache.
Modules
- modules - Available Xataface Modules. This includes such things as CAPTCHA validation, editable javascript grids, and more.
- Module Developers Guide - A guide / Tutorial on how to develop your own Xataface modules.
Preferences
Relationships
- Relationships - Xataface allows you to define relationships between tables using the relationships.ini file. (From the Getting Started Tutorial)
- How to assign order to related records - Sometimes it is desirable for the records in a relationship to take on a particular default order. Dataface 0.6 makes this easy if you follow a few conventions.
- Drag and Drop Reordering of Relationships - A more in-depth tutorial about adding ordering to relationships.
- relationships.ini file reference
- Relationship Permissions
Forms
- How to disable the enter key in forms
- Customizing field labels, descriptions, and widgets - This document explains how to customize some basic aspects of your application’s edit forms. (From the Getting Started tutorial).
- Using Valuelists - How to use valuelists to set up options for your select lists and checkbox groups. (From the Getting Started tutorial)
- Form Validation - Xataface allows you to add validation rules to fields using the fields.ini file. (From the Getting Started tutorial).
- How to handle file uploads - Xataface allows you to store file uploads in BLOB fields or on the file system.
- How to add custom validation with delegate classes - If the standard validators (e.g., required, email, regex, etc..) don’t quite cut it for your validation rules, Xataface allows you to define custom validation methods in the delegate class.
- Validating with regular expressions - How to validate input into a field using regular expressions.
- Dynamic select boxes - How to create two dynamic javascript select boxes from the valuelists.
Importing
- Import Filters - It is common to need to import records en masse into a database. This is what import filters are for. (Since 0.7).
Actions
- Actions I: The Basics - Web Lite’s actions framework allows you to customize existing actions (e.g. new, edit, find) and create your own new actions. (From the Getting Started Tutorial).
- Adding triggers to actions - Xataface 0.6.1 adds some triggers to actions so that the developer can define custom functionality to be performed after an action has successfullly taken place.
- Calendar Action - Using the built-in calendar action to add a full-fledged event calendar to your application.
- Creating a Dashboard - Create a dashboard action for your users to so that they have a logical starting point in your application.
- Selected Records Actions - Create custom actions that are performed on records that have been selected in the list tab.
- Creating Printable Reports - Create a custom printable report using a custom action.
- Using RecordGrid - Using Dataface_RecordGrid to print data in tabular form.
History
- How to activate history logging - Xataface 0.6.9 comes with support for managing the history of your records. This how-to shows you how to enable and use this feature.
RSS Feeds
- Introduction to RSS Feeds in Xataface - Xataface provides RSS feeds to any found set in your application. This tutorial shows how it works and how you can configure these feeds to get your desired results.
Event Calendar
- Calendar Action - Introduction to the Xataface calendar action which can be used to convert your application into a full-fledged event calendar.
var disqus_identifier = ‘xataface.com/wiki/index_page’; (function() { var dsq = document.createElement(‘script’); dsq.type = ‘text/javascript’; dsq.async = true; dsq.src = ‘http://xataface.disqus.com/embed.js’; (document.getElementsByTagName(‘head’)[0] || document.getElementsByTagName(‘body’)[0]).appendChild(dsq); })(); blog comments powered by Disqus
//<![CDATA[ (function() { var links = document.getElementsByTagName(‘a’); var query = ‘?’; for(var i = 0; i < links.length; i++) { if(links[i].href.indexOf(‘#disqus_thread’) >= 0) { query += ‘url’ + i + ‘=’ + encodeURIComponent(links[i].href) + ‘&’; } } document.write(‘
Table of contents
- About Xataface
- Also See:
- Application Delegate Class
- Authenticating Against the Joomla Users Table
- Authenticating Against the PHPBB Users Table
- Available Blocks
- Cached Permissions
- Calendar Action
- Calendar Widget
- Clean the HTML to export data
- Creating a Custom Printable Report
- Creating a CustomSelected RecordsAction
- Creating a Dashboard for your Users
- Customizing Theme Based on IP Address
- Defining Calculated Fields
- Delegate Class Reference
- Drag and Drop Reordering of Related Records in Xataface
- Dynamic_select_boxes
- Grafted fields
- Hiding A Field
- How to Add Custom Sections to the View tab
- How to Contribute Translations
- How to authenticate users with LDAP or Active Directory
- How to build a PHP MySQL Application with 4 lines of code
- How to customize the look and feel of elements in the list view
- How to granulate permissions on each field
- How to make a field editable for some users and only viewable for some other users
- Introduction to RSS Feeds in Xataface
- Introduction to the Xataface API
- Module Developers Guide
- Possible Values
- Relationship Permissions
- Setting up User Registration
- The Lookup Widget
- The Xataface Output Cache
- The checkbox widget
- The filter attribute of thefields.ini file
- The permissions.ini File
- The reCAPTCHA module
- The relationship fields.ini directive
- Using RecordGrid
- Using a custom template for a field group on the edit form
- Writing a Custom Authentication Plugin for Xataface
- Xataface Authentication
- Xataface Preferences
- Xataface Templates
- Xataface Troubleshooting
- Xataface URL Conventions
- __global__ section for the fields.ini file
- __prefs__ fields.ini Section
- __sql__ Delegate Method
- _auth section of the conf.ini file
- action:condition
- action_category
- actions.ini file Reference
- advmultiselect
- afterCopy Delegate class Method
- afterRegister() Trigger
- after_action_activate Delegate Class Method
- after_action_new trigger
- beforeAddRelatedRecord Delegate Class Method
- beforeCopy Delegate Class Method
- beforeHandleRequest Application Delegate Class Method
- beforeRegister() Trigger
- beforeSave Trigger
- before_authenticate hook
- blob
- column:legend
- conf.ini File
- encryptionfields.ini filedirective
- field__pullValue delegate class method
- field__pushValue
- fieldname__default Delegate Class Method
- fieldname__permissions() method
- fieldname__validate Delegate Class Method
- fields.ini Directive: Key
- fields.ini File Reference
- file
- getChildren Delegate Class Method
- getFeed() Delegate Class Method
- getFeedItem() Delegate Class Method
- getNavItem Application Delegate Class Method
- getPasswordChangedEmailInfo Application Delegate Class Method
- getRegistrationActivationEmailInfo() Hook
- getRegistrationActivationEmailSubject() Hook
- getRegistrationActivationEmailSubject() Hook
- getResetPasswordEmailInfo Application Delegate Class Method
- group directive infields.ini file
- init() Delegate Class Method
- list:type relationships.ini file directive
- loginFailed() Application Delegate Trigger
- meta:class relationships.ini file directive
- no_access_text
- relationships.ini File Reference
- secure fields.ini directive
- sendRegistrationActivationEmail() Hook
- setPassword Application Delegate Method
- setSecurityFilter() method
- site_with_backoffice
- struct
- tab directive of the fields.ini file
- table
- use_macro Template Tag
- validateRegistrationForm() hook
- validators:NAME fields.ini directive
- validators:VALIDATOR_NAME:message directive for the fields.ini file
- valuelists.ini file Reference
- widget:atts Directive Reference
- widget:editor fields.ini directive
- widget:type = grid
- widget:type Directive Reference