empty($d['id']) ||
empty($d['_table']) ||
(
- !empty($d['_table'][$d['_table']]) &&
+ !empty($restored[$d['_table']]) &&
in_array($d['id'], $restored[$d['_table']])
)
){
$restored[$d['_table']] = array();
}
- unset($d['_table']);
+ $restored[$d['_table']][] = $d['id'];
- $table->setFrom($d);
- $table->id = $d['id'];
+ $table = DB_DataObject::factory($d['_table']);
- $table->sequenceKey(false,false);
+ if (!is_a($table,'DB_DataObject')) {
+ continue;
+ }
- $table->insert();
+ unset($d['_table']);
- if(!isset($restored[$table->tableName()])){
- $restored[$table->tableName()] = array();
- }
+ $table->setFrom($d);
- $restored[$table->tableName()][$d['id']] = $table;
+ /*
+ * need to use the old id
+ */
+ $table->id = $d['id'];
- $table = DB_DataObject::factory($tableName);
+ $table->sequenceKey(false,false);
-
+ $table->insert();
}
- print_R($affects);exit;
+ $roo->jok('RESTORE');
}
}