1 20 21 package freecs.commands; 22 import freecs.interfaces.ICommand; 23 import freecs.interfaces.IGroupState; 24 import freecs.interfaces.IUserStates; 25 import freecs.content.MessageState; 26 27 32 public class CmdResetQuestioncounter extends AbstractCommand { 33 public final String cmd= "/raq"; 34 private static final ICommand selve=new CmdResetQuestioncounter(); 35 36 private CmdResetQuestioncounter () { } 37 38 public static ICommand getInstance () { 39 return selve; 40 } 41 42 public boolean execute (MessageState msgState, String param) { 43 if (isPunished (msgState)) 44 return false; 45 msgState.targetGroup = msgState.sender.getGroup (); 46 if ((msgState.targetGroup.hasState(IGroupState.MODERATED) 47 || msgState.targetGroup.hasState(IGroupState.ENTRANCE)) 48 && !msgState.sender.hasRight(IUserStates.ROLE_VIP)) { 49 msgState.msgTemplate = "error.noRight.noVipAdmin"; 50 msgState.sender.sendMessage(msgState.mp); 51 return false; 52 } 53 if (!msgState.sender.hasRight(IUserStates.ROLE_VIP) 54 && !msgState.targetGroup.usrIsSu (msgState.sender)) { 55 msgState.msgTemplate = "error.noRight.noSuVipAdmin"; 56 msgState.sender.sendMessage(msgState.mp); 57 return false; 58 } 59 msgState.targetGroup.resetQuestionCounter(); 60 msgState.msgTemplate = "message.raq"; 61 msgState.targetGroup.sendMessage(msgState.mp); 62 return true; 63 } 64 } 65 | Popular Tags |