Adjusted export-import to work with entity type in custom fields.
[timetracker.git] / WEB-INF / lib / ttOrgImportHelper.class.php
index 2a54473..20dd417 100644 (file)
@@ -102,6 +102,7 @@ class ttOrgImportHelper {
         $this->current_group_id = $this->createGroup(array(
           'parent_id' => $this->current_group_id, // Note: after insert current_group_id changes.
           'org_id' => $this->org_id,
+          'group_key' => $attrs['GROUP_KEY'],
           'name' => $attrs['NAME'],
           'description' => $attrs['DESCRIPTION'],
           'currency' => $attrs['CURRENCY'],
@@ -351,6 +352,7 @@ class ttOrgImportHelper {
         $custom_field_id = $this->insertCustomField(array(
           'group_id' => $this->current_group_id,
           'org_id' => $this->org_id,
+          'entity_type' => $attrs['ENTITY_TYPE'],
           'type' => $attrs['TYPE'],
           'label' => $attrs['LABEL'],
           'required' => $attrs['REQUIRED'],
@@ -686,14 +688,15 @@ class ttOrgImportHelper {
     global $i18n;
     $mdb2 = getConnection();
 
-    $columns = '(parent_id, org_id, name, description, currency, decimal_mark, lang, date_format, time_format'.
-      ', week_start, tracking_mode, project_required, task_required, record_type, bcc_email'.
-      ', allow_ip, password_complexity, plugins, lock_spec'.
-      ', workday_minutes, config, created, created_ip, created_by)';
+    $columns = '(parent_id, org_id, group_key, name, description, currency, decimal_mark, lang, date_format, time_format,'.
+      ' week_start, tracking_mode, project_required, task_required, record_type, bcc_email,'.
+      ' allow_ip, password_complexity, plugins, lock_spec,'.
+      ' workday_minutes, config, created, created_ip, created_by)';
 
     $values = ' values (';
     $values .= $mdb2->quote($fields['parent_id']);
     $values .= ', '.$mdb2->quote($fields['org_id']);
+    $values .= ', '.$mdb2->quote(trim($fields['group_key']));
     $values .= ', '.$mdb2->quote(trim($fields['name']));
     $values .= ', '.$mdb2->quote(trim($fields['description']));
     $values .= ', '.$mdb2->quote(trim($fields['currency']));
@@ -1112,14 +1115,15 @@ class ttOrgImportHelper {
 
     $group_id = (int) $fields['group_id'];
     $org_id = (int) $fields['org_id'];
+    $entity_type = (int) $fields['entity_type'];
     $type = (int) $fields['type'];
     $label = $fields['label'];
     $required = (int) $fields['required'];
     $status = $fields['status'];
 
     $sql = "insert into tt_custom_fields".
-      " (group_id, org_id, type, label, required, status)".
-      " values($group_id, $org_id, $type, ".$mdb2->quote($label).", $required, ".$mdb2->quote($status).")";
+      " (group_id, org_id, entity_type, type, label, required, status)".
+      " values($group_id, $org_id, $entity_type, $type, ".$mdb2->quote($label).", $required, ".$mdb2->quote($status).")";
     $affected = $mdb2->exec($sql);
     if (is_a($affected, 'PEAR_Error'))
       return false;