# HG changeset patch # User andrew.victor@mxit.com # Date 1274300971 0 # Node ID 207662bad69c7bf596374ad45158fb78b9eb69d7 # Parent 26e4c9dcb1e10fc563e5d934e6c4b37a8906d286 * Show the buddy's registration country in their profile. * We cannot see the buddy's current "hidden number" setting in their profile, so we need to use the value they had set when they invited us. diff -r 26e4c9dcb1e1 -r 207662bad69c libpurple/protocols/mxit/mxit.c --- a/libpurple/protocols/mxit/mxit.c Wed May 19 19:50:36 2010 +0000 +++ b/libpurple/protocols/mxit/mxit.c Wed May 19 20:29:31 2010 +0000 @@ -552,8 +552,8 @@ static void mxit_get_info( PurpleConnection *gc, const char *who ) { struct MXitSession* session = (struct MXitSession*) gc->proto_data; - const char* profilelist[] = { CP_PROFILE_BIRTHDATE, CP_PROFILE_GENDER, CP_PROFILE_HIDENUMBER, CP_PROFILE_FULLNAME, - CP_PROFILE_TITLE, CP_PROFILE_FIRSTNAME, CP_PROFILE_LASTNAME, CP_PROFILE_EMAIL }; + const char* profilelist[] = { CP_PROFILE_BIRTHDATE, CP_PROFILE_GENDER, CP_PROFILE_FULLNAME, + CP_PROFILE_FIRSTNAME, CP_PROFILE_LASTNAME, CP_PROFILE_REGCOUNTRY }; purple_debug_info( MXIT_PLUGIN_ID, "mxit_get_info: '%s'\n", who ); diff -r 26e4c9dcb1e1 -r 207662bad69c libpurple/protocols/mxit/profile.c --- a/libpurple/protocols/mxit/profile.c Wed May 19 19:50:36 2010 +0000 +++ b/libpurple/protocols/mxit/profile.c Wed May 19 20:29:31 2010 +0000 @@ -123,13 +123,14 @@ purple_notify_user_info_add_pair( info, _( "Nick Name" ), profile->nickname ); purple_notify_user_info_add_pair( info, _( "Birthday" ), profile->birthday ); purple_notify_user_info_add_pair( info, _( "Gender" ), profile->male ? _( "Male" ) : _( "Female" ) ); - purple_notify_user_info_add_pair( info, _( "Hidden Number" ), profile->hidden ? _( "Yes" ) : _( "No" ) ); +// purple_notify_user_info_add_pair( info, _( "Hidden Number" ), profile->hidden ? _( "Yes" ) : _( "No" ) ); /* optional information */ // purple_notify_user_info_add_pair( info, _( "Title" ), profile->title ); purple_notify_user_info_add_pair( info, _( "First Name" ), profile->firstname ); purple_notify_user_info_add_pair( info, _( "Last Name" ), profile->lastname ); // purple_notify_user_info_add_pair( info, _( "Email" ), profile->email ); + purple_notify_user_info_add_pair( info, _( "Country" ), profile->regcountry ); purple_notify_user_info_add_section_break( info ); @@ -149,6 +150,10 @@ /* subscription type */ purple_notify_user_info_add_pair( info, _( "Subscription" ), mxit_convert_subtype_to_name( contact->subtype ) ); + + /* hidden number */ + purple_notify_user_info_add_pair( info, _( "Hidden Number" ), ( contact->flags & MXIT_CFLAG_HIDDEN ) ? _( "Yes" ) : _( "No" ) ); + } purple_notify_userinfo( session->con, username, info, NULL, NULL ); diff -r 26e4c9dcb1e1 -r 207662bad69c libpurple/protocols/mxit/profile.h --- a/libpurple/protocols/mxit/profile.h Wed May 19 19:50:36 2010 +0000 +++ b/libpurple/protocols/mxit/profile.h Wed May 19 20:29:31 2010 +0000 @@ -43,6 +43,7 @@ char lastname[64]; /* user's last name (aka 'surname') */ char email[64]; /* user's email address */ char mobilenr[21]; /* user's mobile number */ + char regcountry[3]; /* user's registered country code */ gboolean hidden; /* set if the user's msisdn should remain hidden */ }; diff -r 26e4c9dcb1e1 -r 207662bad69c libpurple/protocols/mxit/protocol.c --- a/libpurple/protocols/mxit/protocol.c Wed May 19 19:50:36 2010 +0000 +++ b/libpurple/protocols/mxit/protocol.c Wed May 19 20:29:31 2010 +0000 @@ -1647,6 +1647,10 @@ /* mobile number */ g_strlcpy( profile->mobilenr, fvalue, sizeof( profile->mobilenr ) ); } + else if ( strcmp( CP_PROFILE_REGCOUNTRY, fname ) == 0 ) { + /* registered country */ + g_strlcpy( profile->regcountry, fvalue, sizeof( profile->regcountry ) ); + } else { /* invalid profile attribute */ purple_debug_error( MXIT_PLUGIN_ID, "Invalid profile attribute received '%s' \n", fname ); diff -r 26e4c9dcb1e1 -r 207662bad69c libpurple/protocols/mxit/protocol.h --- a/libpurple/protocols/mxit/protocol.h Wed May 19 19:50:36 2010 +0000 +++ b/libpurple/protocols/mxit/protocol.h Wed May 19 20:29:31 2010 +0000 @@ -188,6 +188,7 @@ #define CP_PROFILE_LASTNAME "lastname" /* Last name (UTF8 String) */ #define CP_PROFILE_EMAIL "email" /* Email address (UTF8 String) */ #define CP_PROFILE_MOBILENR "mobilenumber" /* Mobile Number (UTF8 String) */ +#define CP_PROFILE_REGCOUNTRY "registeredcountry" /* Registered Country Code (UTF8 String) */ /* extended profile field types */ #define CP_PROF_TYPE_BOOL 0x02 /* boolean profile attribute type */ diff -r 26e4c9dcb1e1 -r 207662bad69c libpurple/protocols/mxit/roster.h --- a/libpurple/protocols/mxit/roster.h Wed May 19 19:50:36 2010 +0000 +++ b/libpurple/protocols/mxit/roster.h Wed May 19 20:29:31 2010 +0000 @@ -105,7 +105,7 @@ short presence; /* presence state */ short subtype; /* subscription type */ - char* msg; /* invite message */ + char* msg; /* invite/rejection message */ char customMood[16]; /* custom mood */ char* statusMsg; /* status message */