Fabrik User Manual 2 0

Post on 21-Nov-2014

45 views 7 download

Tags:

Transcript of Fabrik User Manual 2 0

User Manual

Fabrik 2.0August 2010

Rob Clayburn

Table of Contents

What's new in Fabrik 2.0?.............................................................. 7Installation .................................................................................... 7Upgrading ...................................................................................... 8Additional Help .............................................................................. 8What is Fabrik? .............................................................................. 8

Forms .......................................................................................... 12

Groups ......................................................................................... 30

Elements...................................................................................... 33

Tables .......................................................................................... 87

Table Filters ............................................................................... 112

Connections ............................................................................... 116

Plug-ins ..................................................................................... 118Visualizations ............................................................................ 119

Packages.................................................................................... 132Scheduled Tasks ........................................................................ 133

Additional Joomla Plug-ins & Modules ....................................... 136

Troublshooting........................................................................... 141Compatibility with 3rd Party Libraries........................................ 142

Appendix.................................................................................... 143

License & Copyright

Suggestions Modifications and Corrections

Prerequisites

What's new in Fabrik 2.0?

The main menu has had some options added and some removed:

+ Plug-ins

+ Visualizations

- Validations- Validation rules

Form creation:

.

Elements:

Google map

CATCHA

RatingColour picker

Yes/no

Installation

Please do not navigate away from this page whilst this is happening.

Upgrading

Additional Help

What is Fabrik?

FormsTablesVisualizations

Scheduled tasks

Key Concepts

Placeholders

nameusernameemailusertype

blockgid

registerDatelastvisitDateguest

URL structure

Design strategy

objectsrelationships

Objects

Relationships

created by

Unpublish

Copy

Delete

Edit -

Published

Update database

View data

Editing or Adding a Form

Basic settings

Details

Label

Introduction -

Error message -

Buttons

Reset button

Reset button label

Copy button -

Copy button label

Go Back button

Go back button label

Apply button

Apply button label -

Submit label

Form Processing

Record in database -

Table name -

Ajax validation -

Success message

Spoof Check

Use cookies on multipage forms -

Note

Note

Form publishing

Published

Author

Author alias

Created Date -

Start Publishing -

Finish Publishing -

Groups

Create a group with the same name as this form -

Or select and add the following available groups

Note:a group can only be assigned to one form

Add -

Current groups

Up -

Down-

Remove-

Randomise groups

Templates

Detailed view template -

Form template

PDF template

Options

PDF icon

Print icon

Email icon -

Show title

Show title in detailed view

Show related data links

Process Joomla plug-ins

CCK

Category

Submission plug-ins

Do

In -

On -

Delete -

Email Submission Plug-in

Email to -

Email to (eval)

From -

Email subject line -

PHP/HTML Template - -

Article template -

Attachment type

Attachments (eval)

Condition -

Receipt Submission Plug-in

Send confirmation receipt to

Receipt title -

Message to send ...

Redirect Submission Plug-in

Jump page -

Append jump url with data -

Thanks message when form submitted -

Use as search data -

Condition -

Run PHP

Process scripts -

PHP File -

PHP code to execute on from submission

Run JS

var dostuff = new Class({

initialize: function(form){

this.form = form; //the form js object}

});

//class name needs to be the same as the file namevar example = new Class({

initialize: function(form){

this.form = form; //the form js object},//run when submit button is pressedonSubmit: function(){

alert('onSubmit');//return false if you want the form to stop submission

},//run once the form has sucessfully submitted data via ajax

onAjaxSubmitComplete: function(){alert('complete');

},onDoElementFX: function(){

alert('onDoElementFX');},//run at the start of saving a group to the db// when you move from one group to another on//multipage formssaveGroupsToDb: function(){

alert('saveGroupsToDb');},//run once the ajax call has completed when moving from one group to

another//on multipage formsonCompleteSaveGroupsToDb: function(){

alert('onCompleteSaveGroupsToDb');},//run each time you move from one group to another on//multipage formsonChangePage: function(){

alert('onChangePage');},//run if the form has ajax validaton//run at start of element validaton that occurs on that elements onblur

eventonStartElementValidation: function(){

alert('onStartElementValidation');},//run when above element validation's ajax call is completedonCompleteElementValidation: function(){

alert('onCompleteElementValidation');},//called when a repeatable group is deletedonDeleteGroup: function(){

alert('onDeleteGroup');},//called when a repeat group is duplicatedonDuplicateGroup: function(){

alert('onDuplicateGroup');},//called when the form gets updatedonUpdate: function(){

alert('onUpdate');},//called when the form is resetonReset: function(){}

});

Create a link to your form

Row id

key name -

Show random records -

Template

Groups

Published

Unpublish

Copy

Delete

Edit -

Published

Form

Number of elements -

Editing or adding a group

Details

Name

Title

CSS -

Columns

Repeat group button -

Show group in form

Javascript to run when repeat group added -

Javascript to run when repeat group removed -

Randomise elements -

Pagination

Page break -

Elements

Add to table view -

Remove from table view -

Published

Unpublish

Copy

Delete

Edit -

Published

Show in table

Order

Editing/Adding an Element

Details

Name -

Label -

Group -

Order -

Element type -

Options

Publishing

Published -

Add to page title -

Access -

Read only access -

Encrypt data -

RSS

Show in RSS feed -

Include label -

Use as pseudo key -

Tips

Hover text -

Hover text title -

Tips over element -

Show tip in detailed view

Comment -

Table settings tab

Show in table -

Link to details -

Allow ordering -

Heading label -

Icon folder -

custom link -

Use as row class

Filters

Filter type -

None -

Field -

Dropdown -

Autocomplete

Range -

Exact match -

Filter access -

Return only full word searches on field searches -

Include in advanced search -

Include in search all

Required -

Filter data

Default -

Show table data -

Show all

Table Column CSS

Heading class -

Heading CSS -

Cell class -

Cell CSS -

Calculations

Sum the column total

Sum access -

Split on

Name Surname Age

Average the column total

Average access -

Split on -

Column median -

Median access -

Split on -

Count records -

Count value -

Count access -

Split on -

Validations

Is alpha-numeric

Error message -

Condition -

Is email

Error message -

Condition -

Allow empty -

Is not

Error message -

Condition -

Is not

Is Numeric

Error message -

Condition -

Allow empty -

Is Unique

Error message -

Condition -

Case insensitive search

Not empty

Error message -

Condition -

PHP

Error message -

Condition -

PHP -

Match or Replace -

Regular Expression

Error message -

Condition -

Regular expression -

Match or Replace -

Replace string -

JavaScript

Add

Code -

Do -

That -

Is -

hide group1 when this == 1

show group1 when this != 1

Getting Element's values with JavaScript

Setting Element Values With JavaScript

Element plug-ins

Button

Checkbox

Default Value -

Default Label -

Element before label -

Options per row -

Sub Elements

Add

Value -

Label -

Default -

Delete -

Note

Add Options

Allow user to add drop down option -

Only add label -

Save new additions -

Advanced

Separator

Database join

Hidden -

Render join as -

Connection -

Table -

Key -

Label -

Or Concat label -

lastname, ' ', firstname

Joins where statement (sql) -

where 'published' = 1

Apply where beneath -

Appy where when

Value of please select option -

Label of please select option

Eval

Default

Add option in front end

Add option in front end -

Popup window Y offset -

Popup window width

Link to joined record -

Front end select

Popup form -

Advanced

Eval options -

Description field -

Apply where to table view -

Date

Width -

Hidden -

Eval -

Default -

return 'default';

Table date format -

Form date format -

Default to current date -

Always return today's date -

First Week day -

Allow typing in field -

Show time selector -

Time format -

Display text

Eval

Default -

return 'default';

Show label -

Drop down

Sub Elements

Add

Value -

Label -

Default -

Delete -

Note

Options

Multiple selections

Multiple selections height

Eval

Default -

return 'default';

Add Options

Allow user to add drop down option -

Only add label -

Save new additions -

Field

Width - -

Hidden -

Eval -

Default -

Password

Maximum length -

Format -

Integer length -

Decimal length -

Number format

Thousand Separator

Decimal Point

Format string - Applies the PHP sprintf function to the string-

Guess link type -

Disable element -

Read only -

Auto complete

File upload

Maximum file size -

Allowed file types -

.jpg, .jpeg, .gif

Upload directory -

Email uploaded file to recipients -

Obfuscate Filename

Length random filename

If existing image found?

Leave original file

Leave original file and increment new file's name

Allow subfolder selection -

Delete images? -

Display

Default image -

Link to file -

Show media in table -

Show media in form -

nothumbnail -

full size

Image library -

Max width -

Max height -

Title element

Use download script

Thumbnail

Make a thumbnail of the uploaded image -

Thumbnail directory -

Thumbnail prefix -

Thumbnail width

Thumbnail height -

Crop

Crop

Cropdir -

Cropwidth -

Cropheight -

Storage

Storage type -

Filesystem -Amazon s3 -

Amazon s3 access key id -

Amazon s3 secret key -

Amazon storage location -

Bucket name -

Export

CSV format

Relative pathFull pathRaw file streamBase 64 encoded file stream

JSON format

ID

Image

Default image -

Root folder -

Allow users to select image in front end -

Show in table -

Float image -

Link -

Link

Width -

Default label -

Default URL

Link target -

Smart link -

Bit.ly

Use bit.ly

Login name

API Key

Radio button

Element before label

Options per row -

Sub Elements

Add

Value -

Label -

Default -

Delete -

Note

Add Options

Allow user to add drop down option -

Only add label -

Save new additions -

Text area

Width -

Height -

Eval -

Default -

Use WYSIWYG Editor -

Show max limit -

Maximum length -

Tagify

Custom tagify URL

Truncate size

User

Hidden -

User Data -

Update on edit -

Update on copy

Label of 'Please select' option

Additional Element Plug-ins

Password

Form example

Administration options

Maximum length

CAPTCHA

Administration options

Show when logged in?

MethodStandard

Recaptcha -

WidthHeightPublic keyPrivate key

Subscriber Exclusive Element Plug-ins

Rating

Form example

Administration options

Rating Mode -User rating -

Creator rating -

No rating option first -

Image file type -

Rate in form -

Google Map

Form Example

Administration settings

Options

Google Map Key -

Map type -NormalSatelliteHybrid

Default lat -Default lon -Start zoom level -Map widthMap height3d Buttons -

Control -

NoneLarge map control

Small map control

Scale control -

Map Type control -

Overview control -

Use static map -

Static -

Full

Mouse scrolling -

Show lat/lng fields -

Geocoding

Enable geocodingNo -Yes -

Use Elements -

Address 1 ... Country -

Trigger geocode with -Button -

As you type -

Table settings

Use static map -Yes

NoMap width-Map height

Cascading Drop down

Form example

Administration settings

Options

Connection -

Table -ID -

Label -

Advanced

Where query -

Hidden -Show please select -

Eval -Default -

Front end

Link to joined record

Calculation

Administration settings

Hidden -Width -Calculation - MUST

MUST

Format string -

Only Calc on Save -

Colour Picker

Form example

Administration settings

Yesno

Form example

Table example

Administration settings

Default -

Parent / Child elements

Tables

Published

UnpublishCopy

DeleteEdit -

New

"import"

"parameters"

Form - edit -View data -

PublishedView details -

Deleting a Table

Parameters

Use WYSIWYG editor for element labels -

Alter filed types -

Remove tables on uninstallMootools version

none -

1.1 -

1.2

Note:

Use mediabox instead of slimbox -

Include lightbox js

Merge JS files -

Compress merged JS file -

Spoof check on form submission

This is depreciated -you should set this setting when editing each individual form

Use work in Progress -

Allow fabrikDebug

Use elements as related data -

Filter data -

Enable single ordering

Importing a CSV file to create a new table

Connection -

CSV file -

Create new table

Label -

Create primary key

import

cancel

Exporting CSV files without using the dialog

View details

Edit table

Details

Label -

Introduction

Filters

Filter trigger -On changeSubmit form -

Show Filters -

Advanced search -

Search all

Advanced search all

Search all label

Require filtering

Filter data

'Show table data'

'Show all'

Navigation

Rows per page -

Show add -

Show navigation -

Show All option

Show total

SEF Slug -

Layout

Template -

Admin template -

Detailed view link -

Empty data message -

Detail url -

PDF Icon -

PDF Template -

Notes

Note -

Advanced

Alter existing field types -

Process Joomla plug-ins

Enable Big Selects

Enable Single OrderingSingle ordering

Mutliple ordering

Work in progress

Joomfish data translation -

Title element -

The Publishing tab

Published -

Author -

Author Alias -

Created date -

Start Publishing -

Finish Publishing -

RSS

Create RSS feed -

Feed title -

Feed date -

RSS Limit -

RSS Maximum Limit -

CSV

CSV import -

CSV export -

Heading format -

Export step

Search

Include in search results -

Field -

Description -

Access

View table -

View records -

Edit records -

Or use field -

Add records -

Delete records -

Empty records -

Data Tab

Primary key

Auto increment

Connection -

Create new table -

Link to table -

Order by -

Oder direction -

Group by

Group by

Order by -

Template -

Order direction

Prefilter

Prefilter query

Field -

Condition -

Value -

Type -

Text

Johnwhere name EQUALS 'John'

Eval

return 'John';

Query

select 'John';No quotes

Apply filter beneath -

Adding an additional prefilter

Name Age Sex

where name EQUALS John (type text) age EQUALS 19 (type no quotes)

Name Age Sex

where name EQUALS John (type text) age EQUALS 19 (type no quotes)

Name Age Sex

where (name EQUALS John (type text) age EQUALS 19 (type no quotes)

Name Age Sex

Teacher Student

Each row separately -Merged joined records into one row -

Teacher Student

Related Data

Table -

Link to table -

Heading-

Button text

Popup -No -Yes -

Link to form

Heading-

Button text-

Popup -No -

Yes -

Table Filters

Filtering via the query string

&tablename___elementname[join]=OR

Querystring filtering to Search Across All Fields:

fabrik_table_filter_all -search-mode-advanced

all -any -exact -none

Prefilters

Get the records stored in the last 2 months:

WHERE:GREATER THAN:TYPE:

Get the records for the upcoming week:

WHERE:GREATER THAN:TYPE:

Display only the logged in users records:

WHERE:EQUALS:TYPE:

Element Filters

Clearing filters

clearfilters=1

resetfilters=1

clearorder=1 :

Copy plug-in

Create a link to you table

Reload calculations

Template

Connections

Default

Published

Unpublish

Copy

Delete

Edit -

Published

Test connection-

Add / Edit a Connection

Description -

Host -

Database -

User -

Password -

Confirm password -

Published -

Plug-ins

Visualizations

Copy

Delete

Edit -

Published

Add / Edit Visualization Standard Options

Details

Label -

Intro text -

Plugin

Publishing

Published

Author

Author alias

Created Date -

Start Publishing -

Finish Publishing -

Plug-ins

Calendar

Template -

Show legend -

Standard event table -

Day view -

Week view -

Popup window y offset -

First week day -

Connection -

Data

Table -

Start date element -

End date element -

Label element -

Color -

Month View options

Day width -

Day height -

Greyscale weekends -

Anatomy of a Fabrik Calendar

Filtering

Chart

Template -

Chart type -

Fill line graph -

Show legend -

Width -

Height -

chds

chxl

chg

chm

Connection -

Table -

Element -

Legend label -

Colour -

Axis label -

Axis measurement unit -

Where

Map

Connection - -

Repeatable controls

Table -

Bubble template -

Icon -

First icon

Last icon

Data icon -

Icon letter

Poly line element

Polyline width -

Polyline colour -

Google Map Key -

Map Type -

Start Zoom Level -

Center map on - first loads

Middle -

Last marker -

Users location -

3D buttons -

Map width (px)

Map height (px)

Template -

Controls

Control -

Scale control -

Map type control -

Overview control -

Ajax Refresh

Ajax Refresh -

Ajax re-centre -

Ajax refresh rate

Clustering

.

Clustering -

Cluster size split -

Cluster size increment

Advanced

Maximum number of markers -

Use cookies

Timeline

Table -

Start date -

End date

Bubble template -

Create links to visualizations

Packages

Scheduled Tasks

Run -

Published

Unpublish

Copy

Delete

Edit -

Published

Add/Edit a Scheduled Task

Label -

Every -

Unit -

E.g. every 1 day

Starting from -

Published -

Connection -

Table -

Plugin -

Email plugin

Eval

To -

Subject -

Message

Update

Field -

Value -

Additional Joomla Plug-ins & Modules

Modules

Form module

Title -

Enabled -

Position -

Order -

Access Level -

Menus

Menus -

Menu Selection -

Parameters

Module class suffix -

Form id -

Row id -

Table module

Parameters

Module class suffix -

Fabrik table id -

Use AJAX -

Randomize records -

Number of records to show -

Template -

Plug-ins

Fabrik

Forms

Tables

Visualisations

Element data

Common modifiers

Search System Plug-in

Search limit -Section heading

Scheduled Task System Plug-in

Troubleshooting

Problem:

"getData: The SELECT would examine more than MAX_JOIN_SIZE rows.."

Solution:

Compatibility with 3rd Party Libraries

JACL +

Joomfish

sh404SEF

Community Builder

Ensure that you have the Joomla Fabrik plug-in installed

Joomsocial

Appendix

Common Joomla PHP coding tasks

Databases