/** * @param Database $db */ public function up(Database $db) { $databaseName = $db->getName(); $this->getKeywordableCollection(); $this->loadConfiguration(); foreach ($this->collections as $collection) { $db->execute(' db.' . $collection . '.find().forEach(function(item) { if (typeof item.keywords != \'undefined\') { keywords = item.keywords; item.keywords = []; for (var i in keywords) { keyword = {}; keyword.$ref = "keyword"; keyword.$id = keywords[i]._id keyword.$db = "' . $databaseName . '" item.keywords.push(keyword); } db.' . $collection . '.update({ _id: item._id }, item); } }); '); } $this->parseNode('up'); }