summaryrefslogtreecommitdiffstats
path: root/EssentialsChat
diff options
context:
space:
mode:
authorsnowleo <schneeleo@gmail.com>2012-02-05 17:19:32 +0100
committersnowleo <schneeleo@gmail.com>2012-02-05 17:19:32 +0100
commit8ab5bad988f7ad9c8a1fafd504cf108f3ec84cc3 (patch)
tree2a33da8fbb378cedbb7210ee80edd1f1891efb87 /EssentialsChat
parent8080abacd6fc379acba4136d0b854d780f262f4e (diff)
downloadEssentials-8ab5bad988f7ad9c8a1fafd504cf108f3ec84cc3.tar
Essentials-8ab5bad988f7ad9c8a1fafd504cf108f3ec84cc3.tar.gz
Essentials-8ab5bad988f7ad9c8a1fafd504cf108f3ec84cc3.tar.lz
Essentials-8ab5bad988f7ad9c8a1fafd504cf108f3ec84cc3.tar.xz
Essentials-8ab5bad988f7ad9c8a1fafd504cf108f3ec84cc3.zip
Modified BetterLocation, and new Permission-System
Diffstat (limited to 'EssentialsChat')
-rw-r--r--EssentialsChat/src/com/earth2me/essentials/chat/ChatPermissions.java22
-rw-r--r--EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayer.java8
-rw-r--r--EssentialsChat/src/com/earth2me/essentials/chat/EssentialsLocalChatEventListener.java3
3 files changed, 27 insertions, 6 deletions
diff --git a/EssentialsChat/src/com/earth2me/essentials/chat/ChatPermissions.java b/EssentialsChat/src/com/earth2me/essentials/chat/ChatPermissions.java
new file mode 100644
index 000000000..5b98002c5
--- /dev/null
+++ b/EssentialsChat/src/com/earth2me/essentials/chat/ChatPermissions.java
@@ -0,0 +1,22 @@
+package com.earth2me.essentials.chat;
+
+import com.earth2me.essentials.api.IPermission;
+import com.earth2me.essentials.perm.BasePermission;
+import java.util.HashMap;
+import java.util.Locale;
+import java.util.Map;
+
+public class ChatPermissions {
+ private static Map<String, IPermission> permissions = new HashMap<String, IPermission>();
+
+ public static IPermission getPermission(final String groupName)
+ {
+ IPermission perm = permissions.get(groupName);
+ if (perm == null)
+ {
+ perm = new BasePermission("essentials.chat.",groupName.toLowerCase(Locale.ENGLISH));
+ permissions.put(groupName, perm);
+ }
+ return perm;
+ }
+}
diff --git a/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayer.java b/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayer.java
index a4621661b..cc21b6dae 100644
--- a/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayer.java
+++ b/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsChatPlayer.java
@@ -8,6 +8,7 @@ import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.api.IGroups;
import com.earth2me.essentials.api.ISettings;
import com.earth2me.essentials.api.IUser;
+import com.earth2me.essentials.perm.Permissions;
import java.util.Locale;
import java.util.Map;
import java.util.logging.Logger;
@@ -77,7 +78,7 @@ public abstract class EssentialsChatPlayer implements Listener
protected void formatChat(final PlayerChatEvent event, final ChatStore chatStore)
{
final IUser user = chatStore.getUser();
- if (user.isAuthorized("essentials.chat.color"))
+ if (Permissions.CHAT_COLOR.isAuthorized(user))
{
event.setMessage(Util.stripColor(event.getMessage()));
}
@@ -141,10 +142,7 @@ public abstract class EssentialsChatPlayer implements Listener
if (event.getMessage().length() > 1 && chatStore.getType().length() > 0)
{
- final StringBuilder permission = new StringBuilder();
- permission.append("essentials.chat.").append(chatStore.getType());
-
- if (user.isAuthorized(permission.toString()))
+ if (ChatPermissions.getPermission(chatStore.getType()).isAuthorized(user))
{
final StringBuilder format = new StringBuilder();
format.append(chatStore.getType()).append("Format");
diff --git a/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsLocalChatEventListener.java b/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsLocalChatEventListener.java
index c7ce5a70d..1eb589ff1 100644
--- a/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsLocalChatEventListener.java
+++ b/EssentialsChat/src/com/earth2me/essentials/chat/EssentialsLocalChatEventListener.java
@@ -3,6 +3,7 @@ package com.earth2me.essentials.chat;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.api.IUser;
+import com.earth2me.essentials.perm.Permissions;
import java.util.logging.Logger;
import org.bukkit.Location;
import org.bukkit.Server;
@@ -52,7 +53,7 @@ public class EssentialsLocalChatEventListener implements Listener
if (delta > event.getRadius())
{
- if (user.isAuthorized("essentials.chat.spy"))
+ if (Permissions.CHAT_SPY.isAuthorized(user))
{
type = type.concat(_("chatTypeSpy"));
}