Sample code:
<?php $dbtable[1] = 'reis'; $table_id[1] = 'table_'.$dbtable[1]; $record_id[1] = 'reis_id'; $record_title[1] = '[reis_omschrijving]'; ?> <div class="alert alert-info" role="alert" id="loading-text"> <strong>Gegevens worden geladen, even geduld ...</strong> </div> <?php $recfields[1]['algemeen']['id*'] = array('type'=>'modal', 'th-title'=>'title veld voor th','col'=>'col-12 col-sm-4', 'label-extra'=>'kort label, zonder spaties', 'placeholder'=>'Vul een ID in', 'attributes'=>array('pattern'=>'^[a-zA-Z0-9_]+$'),'validation'=>array('notempty-message'=>'Je moet een ID invullen','regexp-message'=>'ID mag geen spaties of speciale tekens bevatten: gebruik enkel letters, cijfers en underscore _')); $recfields[1]['algemeen']['omschrijving*'] = array('thdata'=>array('orderable'=>'false'), 'col'=>'col-12 col-sm-8', 'label_extra'=>'langere omschrijving, mag spaties bevatten', 'placeholder'=>'Vul een omschrijving voor de reis in'); $recfields[1]['algemeen']['startdatum'] = array('type'=>'daterange_start','data'=>array('daterange_stopid'=>'reis_einddatum'), 'schrijf_datum_options'=>'dag_kort,maand_voluit', 'col'=>'col-6 col-md-4', 'placeholder'=>'Startdatum'); $recfields[1]['algemeen']['einddatum'] = array('type'=>'daterange_stop', 'col'=>'col-6 col-md-4', 'placeholder'=>'Einddatum'); $recfields[1]['munt']['munteenheid'] = array('col'=>'col-8 col-sm-4 col-lg-3', 'label_extra'=>'(<a href="http://www.xe.com/symbols.php" target="_blank">lijst</a>)', 'placeholder'=>'EUR'); $recfields[1]['munt']['muntsymbool'] = array('col'=>'col-4 col-sm-2 col-lg-2', 'label'=>'symbool'); $recfields[1]['munt']['wisselkoers'] = array('type'=>'float' ,'col'=>'col-12 col-sm-6 col-lg-4', 'placeholder'=>'1.00'); $tableoptions[1] = array('data'=>array('order'=>'[[3,"desc"]]'); $formoptions[1] = array('delete'=>true)); ?> <?php include ("includes/table/table.php"); ?>
$recfields[formnr][tabname][label] = array(…)
formnr
: number of form (normally 1
, but can be 2
, 3
, etc. if multiple database tables are used)tabname
: name of group of columns to displaylabel
: th-field (normally this is the dbcolumnname without the name of the dbtable, e.g. naam_lokale_taal
for hotel_naam_lokale_taal
)array(…
type=>
text
: default (i.e. not needed)modal
: adds link to modal (data-target="#modalDetails-//formnr//"
)date
: adds 'data-order=' to <td> and uses schrijf_datum
for valueschrijf_datum_options
float
th_title
: title attribatue for th-tagsth_data
: $recfields[//formnr//][//tabname//][//label//] = array(..)
//formnr//
: number of form (normally 1
, but could be 2
, 3
, etc. if multiple forms are needed)$dbtable[//formnr//]
and $record_id[//formnr//]
is defined for all forms (typically at top of php page)label
: see above (in section Table)label
ends with *: required field (validation.io not-empty will be triggered)label
starts with [: new row in formlabel
starts with _: ??array(...
col=>//bootstrap grid//
label=>//label//
(default=label as defined in $tablefields)label
ends with *
, this field is required (required
will be added as attribute)label_extra=>//extra information//
extra info after label (in <small>-text) (string, delimiter=space)placeholder=>//placeholder//
attributes=>//attributes//
additional attributes for input, eg. required
(string, delimiter=space)type=>...
text
, number
, radio
, radio_from_array
, select
, daterange_start
, daterange_stop
options=>//options//
additional options, eg. no-copy
(array)data-trigger="event"
: will trigger event after updating value with val()
data-trigger="change"
, which can be captured by $("element").on('change', function() { …
.readonly
: field will not be sent to ajax/process.php for updating.hidenew
: field will not be sent to ajax/process.php for updating when #modalId == -1 (new record)data-fieldformatting='JSON-object
': return value will be reformatted in ajax/process.phpstrftime
, bv. data-fieldformatting='{"strftime":"%a %e %b %Y"}
'PNotify.prototype.options.styling = "bootstrap4";
to top of Javascript