Merge commit 'origin/core-1.0.0' into core
[platal.git] / classes / csvimporter.php
index 34c6c08..1b4258b 100644 (file)
@@ -64,12 +64,12 @@ class CSVImporter
         return true;
     }
 
-    private function getValue($line, $partial_ops, $key, $action)
+    static public function getValue($line, $key, $action, $relation = null)
     {
         if (@array_key_exists($action, $line)) {
             $value = $line[$action];
         } elseif (is_callable($action, false)) {
-            $value = call_user_func($action, $line, $partial_ops, $key);
+            $value = call_user_func($action, $line, $key, $relation);
         } else {
             $value = $action;
         }
@@ -83,7 +83,7 @@ class CSVImporter
     {
         $ops = array();
         foreach ($relation as $key=>$ref) {
-            $ops[$key] = $this->getValue($line, $ops, $key, $ref);
+            $ops[$key] = $this->getValue($line, $key, $ref, $relation);
         }
         return $ops;
     }
@@ -92,7 +92,7 @@ class CSVImporter
     {
         $ops = array();
         foreach ($relation as $key=>$ref) {
-            $value = $this->getValue($line, $ops, $key, $ref);
+            $value = $this->getValue($line, $key, $ref, $relation);
             if (!is_null($value) && $value != 'NULL') {
                 $value = "'" . addslashes($value) . "'";
             }