3
$args = getopt( "", array(
15
$module = $args['module'];
16
$form = $args['form'];
17
$display = ( array_key_exists( "display", $args ) ?
18
$args['display'] : ucfirst( $form ) );
19
$fields = split( ',', $args['fields'] );
20
if ( array_key_exists( "id", $args ) ) {
25
$who = ( array_key_exists( "who", $args ) ?
27
$file = $args['file'];
28
$version = $args['version'];
29
$internalid = array_key_exists( "internalid", $args );
32
if ( $id && ($keyidx = array_search( $id, $fields )) === false ) {
33
die( "ID field isn't listed in the fields given!\n" );
36
$last_mod = date( 'Y-m-d H:i:s' );
37
$csv = fopen( $file, "r" );
38
if ( $csv === false ) {
39
die( "Can't open file: $file\n" );
44
<!DOCTYPE I2CEConfiguration SYSTEM "I2CE_Configuration.dtd">
45
<I2CEConfiguration name="$module">
47
<displayName>$display</displayName>
48
<description>Data for form: $form</description>
49
<version>$version</version>
51
<value>./configs</value>
54
<configurationGroup name="$module" path="/I2CE/formsData/forms/$form">
55
<displayName>Form data: $form</displayName>
59
while ( ($data = fgetcsv( $csv ) ) ) {
60
if ( count($data) != count( $fields ) ) {
61
die( "Data doesn't match given fields: " . print_r( $data, true ) . print_r( $fields, true ) );
65
$key = $data[$keyidx];
75
<configurationGroup name="$key">
76
<displayName>$key</displayName>
77
<configuration name="last_modified">
78
<displayName>Last Modified</displayName>
79
<value>$last_mod</value>
81
<configuration name="who">
82
<displayName>Who</displayName>
85
<configurationGroup name="fields">
86
<displayName>Fields</displayName>
90
foreach( $fields as $idx => $field ) {
91
if ( $internalid && $idx == $keyidx ) {
96
<configuration name="$field">
104
</configurationGroup>
105
</configurationGroup>
112
</configurationGroup>