diff options
| author | Wilmer van der Gaast <wilmer@gaast.net> | 2010-03-31 23:38:50 -0400 | 
|---|---|---|
| committer | Wilmer van der Gaast <wilmer@gaast.net> | 2010-03-31 23:38:50 -0400 | 
| commit | d860a8ddf5039f7208bff4c179bc9fe1549da6da (patch) | |
| tree | cb96dfcc222e78bd23d25f480b94f2c69470e373 /protocols/nogaim.c | |
| parent | 81e04e162bdc4517b2f357fd16dfd76f68245464 (diff) | |
Restored "account" root command and restored enough stuff to be able to
send messages. Also started moving stuff out from nogaim.* into bee_* files.
Diffstat (limited to 'protocols/nogaim.c')
| -rw-r--r-- | protocols/nogaim.c | 182 | 
1 files changed, 0 insertions, 182 deletions
| diff --git a/protocols/nogaim.c b/protocols/nogaim.c index 2edc8e75..741bdb76 100644 --- a/protocols/nogaim.c +++ b/protocols/nogaim.c @@ -548,171 +548,6 @@ void imcb_ask_add( struct im_connection *ic, const char *handle, const char *rea  #endif  } -void imcb_buddy_status( struct im_connection *ic, const char *handle, int flags, const char *state, const char *message ) -{ -	bee_t *bee = ic->bee; -	bee_user_t *bu, *old; -	 -	if( !( bu = bee_user_by_handle( bee, ic, handle ) ) ) -	{ -		if( g_strcasecmp( set_getstr( &ic->bee->set, "handle_unknown" ), "add" ) == 0 ) -		{ -			bu = bee_user_new( bee, ic, handle ); -		} -		else -		{ -			if( set_getbool( &ic->bee->set, "debug" ) || g_strcasecmp( set_getstr( &ic->bee->set, "handle_unknown" ), "ignore" ) != 0 ) -			{ -				imcb_log( ic, "imcb_buddy_status() for unknown handle %s:", handle ); -				imcb_log( ic, "flags = %d, state = %s, message = %s", flags, -				          state ? state : "NULL", message ? message : "NULL" ); -			} -			 -			return; -		} -	} -	 -	/* May be nice to give the UI something to compare against. */ -	old = g_memdup( bu, sizeof( bee_user_t ) ); -	 -	/* TODO(wilmer): OPT_AWAY, or just state == NULL ? */ -	bu->flags = ( flags & OPT_LOGGED_IN ? BEE_USER_ONLINE : 0 ) | -	            ( flags & OPT_AWAY ? BEE_USER_AWAY : 0 ); -	bu->status = g_strdup( ( flags & OPT_AWAY ) && state == NULL ? "Away" : state ); -	bu->status_msg = g_strdup( message ); -	 -	if( bee->ui->user_status ) -		bee->ui->user_status( bee, bu, old ); -	 -	g_free( old->status_msg ); -	g_free( old->status ); -	g_free( old ); -#if 0	 -	oa = u->away != NULL; -	oo = u->online; -	 -	g_free( u->away ); -	g_free( u->status_msg ); -	u->away = u->status_msg = NULL; -	 -	if( ( flags & OPT_LOGGED_IN ) && !u->online ) -	{ -		irc_spawn( ic->irc, u ); -		u->online = 1; -	} -	else if( !( flags & OPT_LOGGED_IN ) && u->online ) -	{ -		struct groupchat *c; -		 -		irc_kill( ic->irc, u ); -		u->online = 0; -		 -		/* Remove him/her from the groupchats to prevent PART messages after he/she QUIT already */ -		for( c = ic->groupchats; c; c = c->next ) -			remove_chat_buddy_silent( c, handle ); -	} -	 -	if( flags & OPT_AWAY ) -	{ -		if( state && message ) -		{ -			u->away = g_strdup_printf( "%s (%s)", state, message ); -		} -		else if( state ) -		{ -			u->away = g_strdup( state ); -		} -		else if( message ) -		{ -			u->away = g_strdup( message ); -		} -		else -		{ -			u->away = g_strdup( "Away" ); -		} -	} -	else -	{ -		u->status_msg = g_strdup( message ); -	} -	 -	/* LISPy... */ -	if( ( set_getbool( &ic->bee->set, "away_devoice" ) ) &&		/* Don't do a thing when user doesn't want it */ -	    ( u->online ) &&						/* Don't touch offline people */ -	    ( ( ( u->online != oo ) && !u->away ) ||			/* Voice joining people */ -	      ( ( u->online == oo ) && ( oa == !u->away ) ) ) )		/* (De)voice people changing state */ -	{ -		char *from; -		 -		if( set_getbool( &ic->bee->set, "simulate_netsplit" ) ) -		{ -			from = g_strdup( ic->irc->myhost ); -		} -		else -		{ -			from = g_strdup_printf( "%s!%s@%s", ic->irc->mynick, ic->irc->mynick, -			                                    ic->irc->myhost ); -		} -		irc_write( ic->irc, ":%s MODE %s %cv %s", from, ic->irc->channel, -		                                          u->away?'-':'+', u->nick ); -		g_free( from ); -	} -#endif -} - -void imcb_buddy_msg( struct im_connection *ic, const char *handle, char *msg, uint32_t flags, time_t sent_at ) -{ -#if 0 -	bee_t *bee = ic->bee; -	char *wrapped; -	user_t *u; -	 -	u = user_findhandle( ic, handle ); -	 -	if( !u ) -	{ -		char *h = set_getstr( &bee->set, "handle_unknown" ); -		 -		if( g_strcasecmp( h, "ignore" ) == 0 ) -		{ -			if( set_getbool( &bee->set, "debug" ) ) -				imcb_log( ic, "Ignoring message from unknown handle %s", handle ); -			 -			return; -		} -		else if( g_strncasecmp( h, "add", 3 ) == 0 ) -		{ -			int private = set_getbool( &bee->set, "private" ); -			 -			if( h[3] ) -			{ -				if( g_strcasecmp( h + 3, "_private" ) == 0 ) -					private = 1; -				else if( g_strcasecmp( h + 3, "_channel" ) == 0 ) -					private = 0; -			} -			 -			imcb_add_buddy( ic, handle, NULL ); -			u = user_findhandle( ic, handle ); -			u->is_private = private; -		} -		else -		{ -			imcb_log( ic, "Message from unknown handle %s:", handle ); -			u = user_find( irc, irc->mynick ); -		} -	} -	 -	if( ( g_strcasecmp( set_getstr( &ic->bee->set, "strip_html" ), "always" ) == 0 ) || -	    ( ( ic->flags & OPT_DOES_HTML ) && set_getbool( &ic->bee->set, "strip_html" ) ) ) -		strip_html( msg ); - -	wrapped = word_wrap( msg, 425 ); -	irc_msgfrom( irc, u->nick, wrapped ); -	g_free( wrapped ); -#endif -} -  void imcb_buddy_typing( struct im_connection *ic, char *handle, uint32_t flags )  {  #if 0 @@ -1034,23 +869,6 @@ char *set_eval_away_devoice( set_t *set, char *value )  /* The plan is to not allow straight calls to prpl functions anymore, but do     them all from some wrappers. We'll start to define some down here: */ -int imc_buddy_msg( struct im_connection *ic, char *handle, char *msg, int flags ) -{ -	char *buf = NULL; -	int st; -	 -	if( ( ic->flags & OPT_DOES_HTML ) && ( g_strncasecmp( msg, "<html>", 6 ) != 0 ) ) -	{ -		buf = escape_html( msg ); -		msg = buf; -	} -	 -	st = ic->acc->prpl->buddy_msg( ic, handle, msg, flags ); -	g_free( buf ); -	 -	return st; -} -  int imc_chat_msg( struct groupchat *c, char *msg, int flags )  {  	char *buf = NULL; | 
