From 2de270ca3cd8f49964af5ef4b25bb090d3cc2324 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20P=C3=B6sel?= Date: Sat, 12 Dec 2015 10:55:57 +0000 Subject: Facebook: Fix routing of unsupported statuses to Away instead of Online git-svn-id: http://svn.miranda-ng.org/main/trunk@15845 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- protocols/FacebookRM/res/facebook.rc | 5 +++-- protocols/FacebookRM/src/proto.cpp | 13 +++++++------ 2 files changed, 10 insertions(+), 8 deletions(-) (limited to 'protocols') diff --git a/protocols/FacebookRM/res/facebook.rc b/protocols/FacebookRM/res/facebook.rc index 6459534a63..e6ff53fd6b 100644 --- a/protocols/FacebookRM/res/facebook.rc +++ b/protocols/FacebookRM/res/facebook.rc @@ -159,7 +159,7 @@ BEGIN CONTROL "Post Miranda statuses to Wall",IDC_SET_STATUS,"Button",BS_AUTOCHECKBOX | BS_TOP | WS_TABSTOP,13,21,281,10 CONTROL "Turn off chat on Facebook when going to offline in Miranda",IDC_DISCONNECT_CHAT, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,34,281,10 - CONTROL "Map unsupported statuses to Invisible (instead of Online)",IDC_MAP_STATUSES, + CONTROL "Map unsupported statuses to Invisible (instead of Away)",IDC_MAP_STATUSES, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,47,281,10 CONTROL "Allow posting statuses to my pages (may slow down login)",IDC_LOAD_PAGES, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,61,281,10 @@ -308,7 +308,8 @@ END // // Generated from the TEXTINCLUDE 3 resource. // - + + ///////////////////////////////////////////////////////////////////////////// #endif // not APSTUDIO_INVOKED diff --git a/protocols/FacebookRM/src/proto.cpp b/protocols/FacebookRM/src/proto.cpp index de58eec7be..a938f47458 100644 --- a/protocols/FacebookRM/src/proto.cpp +++ b/protocols/FacebookRM/src/proto.cpp @@ -181,20 +181,21 @@ int FacebookProto::SetStatus(int new_status) // Routing statuses not supported by Facebook switch (new_status) { + case ID_STATUS_ONLINE: case ID_STATUS_AWAY: case ID_STATUS_INVISIBLE: case ID_STATUS_OFFLINE: m_iDesiredStatus = new_status; break; - - default: - m_iDesiredStatus = ID_STATUS_INVISIBLE; - if (getByte(FACEBOOK_KEY_MAP_STATUSES, DEFAULT_MAP_STATUSES)) - break; - case ID_STATUS_ONLINE: + case ID_STATUS_NA: + m_iDesiredStatus = ID_STATUS_AWAY; + break; case ID_STATUS_FREECHAT: m_iDesiredStatus = ID_STATUS_ONLINE; break; + default: + m_iDesiredStatus = getByte(FACEBOOK_KEY_MAP_STATUSES, DEFAULT_MAP_STATUSES) ? ID_STATUS_INVISIBLE : ID_STATUS_AWAY; + break; } if (new_status != ID_STATUS_OFFLINE && m_iStatus == ID_STATUS_CONNECTING) { -- cgit v1.2.3