commit 185bbe6cc12f8cdfe2b9643417f0794dff9b3d75
parent b4bfd77380548664b826d2f0b0c93be77b35c30c
Author: Jan Dankert <devnull@localhost>
Date: Sun, 12 Feb 2012 21:26:40 +0100
Fix: Versenden von Mails, Anzeige des Fehlers, falls Mail nicht versendet wurde.
Diffstat:
2 files changed, 27 insertions(+), 9 deletions(-)
diff --git a/res/values/strings.xml b/res/values/strings.xml
@@ -130,7 +130,7 @@
<string name="goto_bottom">Nach unten</string>
<string name="reply">Antworten</string>
<string name="sent_ok">Nachricht wurde veschickt</string>
- <string name="sent_fail">Nicht verschickt</string>
+ <string name="sent_fail">Die Nachricht konnte nicht gesendet werden</string>
<string name="new_topic">Neues Thema</string>
<string name="parse_bbcode">BB-Code auswerten</string>
<string name="parse_bbcode_desc">In Forumbeiträgen den BB-Code auflösen. Kann die
diff --git a/src/de/mtbnews/android/tapatalk/TapatalkClient.java b/src/de/mtbnews/android/tapatalk/TapatalkClient.java
@@ -9,7 +9,6 @@ import org.xmlrpc.android.XMLRPCClient;
import org.xmlrpc.android.XMLRPCException;
import android.text.TextUtils;
-import android.util.Log;
import de.mtbnews.android.tapatalk.TapatalkException.TapatalkErrorCode;
import de.mtbnews.android.tapatalk.wrapper.Forum;
import de.mtbnews.android.tapatalk.wrapper.ListHolder;
@@ -18,7 +17,6 @@ import de.mtbnews.android.tapatalk.wrapper.Message;
import de.mtbnews.android.tapatalk.wrapper.Post;
import de.mtbnews.android.tapatalk.wrapper.Search;
import de.mtbnews.android.tapatalk.wrapper.Topic;
-import de.mtbnews.android.util.IBC;
/**
* Tapatalk-compatible client.
@@ -721,12 +719,33 @@ public class TapatalkClient
final Object[] params = new Object[] { to, subject.getBytes(),
content.getBytes() };
- final Boolean ok = (Boolean) client
- .callEx("create_message", params);
- if (!ok)
+ Object result = client.callEx("create_message", params);
+
+ if (result instanceof Boolean)
{
- throw new TapatalkException("sending message failed",
- TapatalkErrorCode.SEND_MESSAGE_FAILED);
+ // Im Erfolgsfall ist das result vom Typ java.lang.Boolean
+
+ final Boolean ok = (Boolean) result;
+ if (!ok)
+ {
+ throw new TapatalkException("sending message failed",
+ TapatalkErrorCode.SEND_MESSAGE_FAILED);
+ }
+ }
+ else
+ {
+ // Das result kann auch eine Map sein
+
+ try
+ {
+ toMap(result);
+ }
+ catch (TapatalkException e)
+ {
+ throw new TapatalkException("sending message failed: "
+ + e.getMessage(),
+ TapatalkErrorCode.SEND_MESSAGE_FAILED);
+ }
}
}
catch (XMLRPCException e)
@@ -814,5 +833,4 @@ public class TapatalkClient
return list;
}
-
}