summaryrefslogtreecommitdiffstats
path: root/EssentialsGroupManager/src/org
diff options
context:
space:
mode:
authorElgarL <ElgarL@palmergames.com>2011-10-11 13:10:29 +0100
committerElgarL <ElgarL@palmergames.com>2011-10-11 13:10:29 +0100
commit01a9f491b9083baa8098e78e2dfc9fae6fc2c86a (patch)
tree99ed5d513f509ebf9151fb39e5ff41f5b5cc2426 /EssentialsGroupManager/src/org
parent997fb1e28f341f5319099192ad0b09928a913613 (diff)
downloadEssentials-01a9f491b9083baa8098e78e2dfc9fae6fc2c86a.tar
Essentials-01a9f491b9083baa8098e78e2dfc9fae6fc2c86a.tar.gz
Essentials-01a9f491b9083baa8098e78e2dfc9fae6fc2c86a.tar.lz
Essentials-01a9f491b9083baa8098e78e2dfc9fae6fc2c86a.tar.xz
Essentials-01a9f491b9083baa8098e78e2dfc9fae6fc2c86a.zip
Added two new permission nodes - groupmanager.notify.self &
groupmanager.notify.other These allow players/admins to be notified when players are moved between groups.
Diffstat (limited to 'EssentialsGroupManager/src/org')
-rw-r--r--EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java26
-rw-r--r--EssentialsGroupManager/src/org/anjocaido/groupmanager/data/User.java5
2 files changed, 30 insertions, 1 deletions
diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java
index cf8075377..ac822908f 100644
--- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java
+++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java
@@ -28,6 +28,7 @@ import org.anjocaido.groupmanager.events.GMWorldListener;
import org.anjocaido.groupmanager.utils.GMLoggerHandler;
import org.anjocaido.groupmanager.utils.PermissionCheckResult;
import org.anjocaido.groupmanager.utils.Tasks;
+import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
@@ -1751,6 +1752,31 @@ public class GroupManager extends JavaPlugin {
return false;
}
+
+ /**
+ * Send confirmation of a group change.
+ * using permission nodes...
+ *
+ * groupmanager.notify.self
+ * groupmanager.notify.other
+ *
+ * @param name
+ * @param msg
+ */
+ public static void notify(String name, String msg) {
+
+ Player player = Bukkit.getServer().getPlayerExact(name);
+
+ for(Player test: Bukkit.getServer().getOnlinePlayers()) {
+ if (!test.equals(player)){
+ if (test.hasPermission("groupmanager.notify.other"))
+ test.sendMessage(ChatColor.YELLOW + name +" was " + msg);
+ } else
+ if ((player != null) && ((player.hasPermission("groupmanager.notify.self")) || (player.hasPermission("groupmanager.notify.other"))))
+ player.sendMessage(ChatColor.YELLOW + "You we're " + msg);
+ }
+
+ }
/**
* @return the config
diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/data/User.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/data/User.java
index 46dbb3ddc..a95018fa9 100644
--- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/data/User.java
+++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/data/User.java
@@ -119,9 +119,12 @@ public class User extends DataUnit implements Cloneable {
group = getDataSource().getGroup(group.getName());
this.group = group.getName();
flagAsChanged();
- if (GroupManager.isLoaded())
+ if (GroupManager.isLoaded()) {
if (GroupManager.BukkitPermissions.player_join = false)
GroupManager.BukkitPermissions.updateAllPlayers();
+
+ GroupManager.notify(this.getName(), String.format(" moved to the group %s.", group.getName()));
+ }
}
public void addSubGroup(Group subGroup) {