diff options
Diffstat (limited to 'chat.c')
| -rw-r--r-- | chat.c | 20 | 
1 files changed, 19 insertions, 1 deletions
@@ -57,7 +57,7 @@ struct chat *chat_add( irc_t *irc, account_t *acc, char *handle, char *channel )  	c->channel = g_strdup( channel );  	s = set_add( &c->set, "auto_join", "false", set_eval_bool, c ); -	s = set_add( &c->set, "auto_rejoin", "false", set_eval_bool, c ); +	/* s = set_add( &c->set, "auto_rejoin", "false", set_eval_bool, c ); */  	s = set_add( &c->set, "nick", NULL, NULL, c );  	s->flags |= SET_NULL_OK; @@ -168,3 +168,21 @@ int chat_chanok( char *a )  	else  		return 0;  } + +int chat_join( irc_t *irc, struct chat *c ) +{ +	struct groupchat *gc; +	char *nick = set_getstr( &c->set, "nick" ); +	 +	if( nick == NULL ) +		nick = irc->nick; +	 +	if( ( gc = c->acc->prpl->chat_join( c->acc->ic, c->handle, nick, NULL ) ) ) +	{ +		g_free( gc->channel ); +		gc->channel = g_strdup( c->channel ); +		return 1; +	} +	 +	return 0; +}  | 
