@@ -720,7 +720,7 @@ function forena_data_settings_edit($form, &$form_state, $source=-1) {
'path'=>'',
'config'=>array(
'source'=>'user',
'data_engine'=>'FrxDrupal',
'data provider'=>'FrxDrupal',
'access callback'=>'user_access',
'user callback'=>'forena_current_user_id'
),
...
...
@@ -735,7 +735,7 @@ function forena_data_settings_edit($form, &$form_state, $source=-1) {
$form_state['storage']=array(
'name'=>$source,
'title'=>$r['title'],
'path'=>$r['path'],
'path'=>@$r['path'],
'config'=>$load,
);
...
...
@@ -744,7 +744,7 @@ function forena_data_settings_edit($form, &$form_state, $source=-1) {
$data=$form_state['storage'];
$config=$data['config'];
$locked=!$adding||!(@$config['source']=='user');
$locked=!($adding||(@$config['source']=='user'));
$values=@$form_state['values'];
$form['name']=array(
...
...
@@ -759,6 +759,7 @@ function forena_data_settings_edit($form, &$form_state, $source=-1) {
$form['title']=array(
'#type'=>'textfield',
'#title'=>t('Title'),
'#required'=>TRUE,
'#description'=>t('Human readable name that describes the data source. This primarily occurs in error messages where the data source cannot be accessed.'),
'#default_value'=>$data['title'],
);
...
...
@@ -773,20 +774,39 @@ function forena_data_settings_edit($form, &$form_state, $source=-1) {
$form['path']=array(
'#type'=>'textfield',
'#title'=>t('Path'),
'#required'=>TRUE,
'#description'=>t('Directory containing data block files.'),
'#default_value'=>@$data['path'],
);
$user_options=array(
''=>'None',
'forena_current_user_id'=>'UID',
'forena_current_user_name'=>'User name',
);
$form['user_callback']=array(
'#type'=>'select',
'#title'=>'Current user',
'#description'=>t('Can be refererenced as :current_user in each data block.'),
'#options'=>$user_options,
'#default_value'=>$config['user callback'],
'#disabled'=>$locked,
);
// Access method list
$access=array(
'callback'=>'Drupal Security',
'block'=>'Data Block',
'callback'=>t('Use drupal permissions'),
'block'=>t('Match values provided by a data block. '),
'#description'=>t('The datablock to be used to interpret permissions. This should return a single column of permissions based on the current user. May be provided by another repository.'),
'#default_value'=>@$config['access block'],
);
break;
default:
$form['access_details']['accesscallback']=array(
$form['access_details']['access_callback']=array(
'#type'=>'item',
'#title'=>'Access callback',
'#markup'=>$config['access callback'],
'#markup'=>@$config['access callback'],
);
}
...
...
@@ -829,13 +850,13 @@ function forena_data_settings_edit($form, &$form_state, $source=-1) {
'FrxFiles'=>t('XML Files'),
);
$form['data_engine']=array(
$form['data_provider']=array(
'#type'=>'select',
'#title'=>t('Driver'),
'#description'=>t('Forena data connection type'),
'#options'=>$drivers,
'#disabled'=>$locked,
'#default_value'=>$config['data_engine'],
'#default_value'=>$config['data provider'],
'#ajax'=>array(
'callback'=>'forena_connection_info_callback',
'wrapper'=>'conn-div',
...
...
@@ -848,9 +869,9 @@ function forena_data_settings_edit($form, &$form_state, $source=-1) {