Commit efc9a4b3 authored by Melledy's avatar Melledy
Browse files

Grant superuser permissions to accounts created before the permissions update

parent 4cf734fb
...@@ -4,6 +4,7 @@ import dev.morphia.annotations.Collation; ...@@ -4,6 +4,7 @@ import dev.morphia.annotations.Collation;
import dev.morphia.annotations.Entity; import dev.morphia.annotations.Entity;
import dev.morphia.annotations.Id; import dev.morphia.annotations.Id;
import dev.morphia.annotations.Indexed; import dev.morphia.annotations.Indexed;
import dev.morphia.annotations.PreLoad;
import emu.grasscutter.database.DatabaseHelper; import emu.grasscutter.database.DatabaseHelper;
import emu.grasscutter.utils.Crypto; import emu.grasscutter.utils.Crypto;
import emu.grasscutter.utils.Utils; import emu.grasscutter.utils.Utils;
...@@ -12,6 +13,8 @@ import dev.morphia.annotations.IndexOptions; ...@@ -12,6 +13,8 @@ import dev.morphia.annotations.IndexOptions;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import com.mongodb.DBObject;
@Entity(value = "accounts", noClassnameStored = true) @Entity(value = "accounts", noClassnameStored = true)
public class Account { public class Account {
@Id private String id; @Id private String id;
...@@ -114,6 +117,14 @@ public class Account { ...@@ -114,6 +117,14 @@ public class Account {
return this.token; return this.token;
} }
@PreLoad
public void onLoad(DBObject dbObj) {
// Grant the superuser permissions to accounts created before the permissions update
if (!dbObj.containsField("permissions")) {
this.addPermission("*");
}
}
public void save() { public void save() {
DatabaseHelper.saveAccount(this); DatabaseHelper.saveAccount(this);
} }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment