FIX: fix multiple enumeration classes

Enumeration classes shared one static variable which caused sharing data. Main problem was with conflicts in names. This commit divides enumeration into "namespaces". Used namespace is return value from "get_called_class()" function.
This commit is contained in:
Michal Kváček
2016-01-26 23:19:42 +01:00
parent dc5821649a
commit bc2bdd38b9
4 changed files with 58 additions and 19 deletions
+12 -5
View File
@@ -5,9 +5,16 @@ use App\Models\User;
class UserRoles extends BaseEnumeration
{
public static $items = [
User::ROLE_ADMIN => 'admin/userManagement.role_' . User::ROLE_ADMIN,
User::ROLE_EDITOR => 'admin/userManagement.role_' . User::ROLE_EDITOR,
User::ROLE_VISITOR => 'admin/userManagement.role_' . User::ROLE_VISITOR
];
public static function init()
{
$roles = [
User::ROLE_ADMIN => 'admin/userManagement.role_' . User::ROLE_ADMIN,
User::ROLE_EDITOR => 'admin/userManagement.role_' . User::ROLE_EDITOR,
User::ROLE_VISITOR => 'admin/userManagement.role_' . User::ROLE_VISITOR
];
foreach ($roles as $role => $translation) {
self::push($role, $translation);
}
}
}