mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-18 23:27:26 +01:00
pets: migration working, but still don't understand why some users
already have pets as new structure not old
This commit is contained in:
@@ -54,23 +54,27 @@ db.users.find().forEach(function(user){
|
|||||||
|
|
||||||
// migrate items.pet to items.currentPet
|
// migrate items.pet to items.currentPet
|
||||||
if (!!user.items.pet) {
|
if (!!user.items.pet) {
|
||||||
var oldPet = user.items.pet,
|
var mapped = mapping[user.items.pet.name];
|
||||||
mapped = mapping[oldPet.name];
|
delete user.items.pet;
|
||||||
user.items.currentPet = {
|
user.items.currentPet = {
|
||||||
modifier: mapped.modifier,
|
modifier: mapped.modifier,
|
||||||
name: mapped.name,
|
name: mapped.name,
|
||||||
str: mapped.name + "-" + mapped.modifier,
|
str: mapped.name + "-" + mapped.modifier,
|
||||||
text: '' // FIXME?
|
text: '' // FIXME?
|
||||||
}
|
}
|
||||||
delete user.items.pet
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// migrate items.pets
|
// migrate items.pets
|
||||||
if (!!user.items.pets) {
|
if (!!user.items.pets) {
|
||||||
var newPets = [];
|
var newPets = [];
|
||||||
_.each(user.items.pets, function(val, key){
|
_.each(user.items.pets, function(val, key){
|
||||||
if (_.isNumber(key)) throw "Error: User appears already migrated, this shouldn't be happening!"
|
if (_.isNumber(key)) {
|
||||||
newPets.push(mapping[key].name + "-" + mapping[key].modifier);
|
newPets.push(val)
|
||||||
|
//FIXME why is this happening? seems the user gets migrated already...
|
||||||
|
//throw "Error: User appears already migrated, this shouldn't be happening!"
|
||||||
|
} else {
|
||||||
|
newPets.push(mapping[key].name + "-" + mapping[key].modifier);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
user.items.pets = newPets;
|
user.items.pets = newPets;
|
||||||
}
|
}
|
||||||
@@ -80,8 +84,7 @@ db.users.find().forEach(function(user){
|
|||||||
{_id:user._id},
|
{_id:user._id},
|
||||||
{$set:
|
{$set:
|
||||||
{ 'items' : user.items }
|
{ 'items' : user.items }
|
||||||
},
|
}
|
||||||
{multi:true}
|
|
||||||
);
|
);
|
||||||
} catch(e) {
|
} catch(e) {
|
||||||
print(e);
|
print(e);
|
||||||
|
|||||||
Reference in New Issue
Block a user