config.php
WEB-INF/templates_c/*.*
+WEB-INF/templates_c/import_*
WEB-INF/lib/tcpdf/
nbproject/
upload/
fwrite($this->file, $this->indentation." </custom_fields>\n");
unset($custom_fields);
+ // Write custom field options.
+ fwrite($this->file, $this->indentation." <custom_field_options>\n");
+ foreach ($custom_field_options as $option) {
+ $custom_field_option_part = $this->indentation.' '."<custom_field_option id=\"".$this->customFieldOptionMap[$option['id']]."\"";
+ $custom_field_option_part .= " field_id=\"".$this->customFieldMap[$option['field_id']]."\"";
+ $custom_field_option_part .= " value=\"".htmlentities($option['value'])."\"";
+ $custom_field_option_part .= "></custom_field_option>\n";
+ fwrite($this->file, $custom_field_option_part);
+ }
+ fwrite($this->file, $this->indentation." </custom_field_options>\n");
+ unset($custom_field_options);
+
// Call self recursively for all subgroups.
foreach ($this->subgroups as $subgroup) {
$subgroup_helper = new ttGroupExportHelper($subgroup['id'], $this->file, $this->indentation.' ');
$this->currentGroupCustomFieldMap[$attrs['ID']] = $custom_field_id;
} else $this->errors->add($i18n->get('error.db'));
}
+
+ if ($name == 'CUSTOM_FIELD_OPTIONS') {
+ // If we get here, we have to recycle $currentGroupCustomFieldOptionMap.
+ unset($this->currentGroupCustomFieldOptionMap);
+ $this->currentGroupCustomFieldOptionMap = array();
+ // Custom field option map is reconstructed after processing <custom_field_option> elements in XML. See below.
+ }
+
+ if ($name == 'CUSTOM_FIELD_OPTION') {
+ // We get here when processing <custom_field_option> tags for the current group.
+ $custom_field_option_id = ttCustomFieldHelper::insertOption(array(
+ // 'group_id' => $this->current_group_id, TODO: add this when group_id field is added to the table.
+ // 'org_id' => $this->org_id, TODO: add this when org_id field is added to the table.
+ 'field_id' => $this->currentGroupCustomFieldMap[$attrs['FIELD_ID']],
+ 'value' => $attrs['VALUE']));
+ if ($custom_field_option_id) {
+ // Add a mapping.
+ $this->currentGroupCustomFieldOptionMap[$attrs['ID']] = $custom_field_option_id;
+ } else $this->errors->add($i18n->get('error.db'));
+ }
}
}
<br>
<table cellspacing="0" cellpadding="4" width="100%" border="0">
<tr>
- <td align="center"> Anuko Time Tracker 1.18.12.4412 | Copyright © <a href="https://www.anuko.com/lp/tt_3.htm" target="_blank">Anuko</a> |
+ <td align="center"> Anuko Time Tracker 1.18.12.4413 | Copyright © <a href="https://www.anuko.com/lp/tt_3.htm" target="_blank">Anuko</a> |
<a href="https://www.anuko.com/lp/tt_4.htm" target="_blank">{$i18n.footer.credits}</a> |
<a href="https://www.anuko.com/lp/tt_5.htm" target="_blank">{$i18n.footer.license}</a> |
<a href="https://www.anuko.com/lp/tt_7.htm" target="_blank">{$i18n.footer.improve}</a>