Skip to content

Commit

Permalink
* Added /kickban as requested in #19
Browse files Browse the repository at this point in the history
 * Un-hid the contextual menu item for kick & ban
  • Loading branch information
Unknown committed Nov 13, 2005
1 parent 75d0c15 commit ae8ba84
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 4 deletions.
5 changes: 1 addition & 4 deletions JVChatRoomMember.m
Expand Up @@ -381,14 +381,11 @@ - (NSMenu *) menu {
[menu addItem:item];

item = [[[NSMenuItem alloc] initWithTitle:NSLocalizedString( @"Kick & Ban From Room", "kickban from room contextual menu - admin only" ) action:@selector( kickban: ) keyEquivalent:@""] autorelease];
[item setKeyEquivalentModifierMask:NSShiftKeyMask];
if( [item respondsToSelector:@selector( setAlternate: )] )
[item setAlternate:YES];
[item setTarget:self];
[menu addItem:item];

item = [[[NSMenuItem alloc] initWithTitle:NSLocalizedString( [NSString stringWithUTF8String:"Kick & Ban From Room..."], "kickban from room (customized) contextual menu - admin only" ) action:@selector( customKickban: ) keyEquivalent:@""] autorelease];
[item setKeyEquivalentModifierMask:( NSShiftKeyMask | NSAlternateKeyMask )];
[item setKeyEquivalentModifierMask:NSAlternateKeyMask];
if( [item respondsToSelector:@selector( setAlternate: )] )
[item setAlternate:YES];
[item setTarget:self];
Expand Down
16 changes: 16 additions & 0 deletions Plug-Ins/Standard Commands/JVStandardCommands.m
Expand Up @@ -131,6 +131,22 @@ - (BOOL) processUserCommand:(NSString *) command withArguments:(NSAttributedStri
MVChatUser *user = [[[room target] memberUsersWithNickname:member] anyObject];
if( user ) [[room target] kickOutMemberUser:user forReason:reason];
return YES;
} else if( ! [command caseInsensitiveCompare:@"kickban"] ) {
NSString *member = nil;
NSScanner *scanner = [NSScanner scannerWithString:[arguments string]];

[scanner scanUpToCharactersFromSet:[NSCharacterSet whitespaceAndNewlineCharacterSet] intoString:&member];
if( ! [member length] ) return NO;

NSAttributedString *reason = nil;
if( [arguments length] >= [scanner scanLocation] + 1 )
reason = [arguments attributedSubstringFromRange:NSMakeRange( [scanner scanLocation] + 1, ( [arguments length] - [scanner scanLocation] - 1 ) )];

MVChatUser *user = [[[room target] memberUsersWithNickname:member] anyObject];
if( user ) [[room target] kickOutMemberUser:user forReason:reason];
user = [MVChatUser wildcardUserFromString:member];
if( user ) [[room target] addBanForUser:user];
return YES;
} else if( ! [command caseInsensitiveCompare:@"op"] ) {
NSArray *args = [[arguments string] componentsSeparatedByString:@" "];
NSEnumerator *e = [args objectEnumerator];
Expand Down

0 comments on commit ae8ba84

Please sign in to comment.