(Context context, JSONArray jargs, EntityFolder folder, EntityMessage message, IMAPFolder ifolder)
| 1037 | } |
| 1038 | |
| 1039 | private static void onAnswered(Context context, JSONArray jargs, EntityFolder folder, EntityMessage message, IMAPFolder ifolder) throws MessagingException, JSONException { |
| 1040 | // Mark message (un)answered |
| 1041 | DB db = DB.getInstance(context); |
| 1042 | |
| 1043 | if (folder.read_only) |
| 1044 | return; |
| 1045 | |
| 1046 | if (!ifolder.getPermanentFlags().contains(Flags.Flag.ANSWERED)) { |
| 1047 | db.message().setMessageAnswered(message.id, false); |
| 1048 | db.message().setMessageUiAnswered(message.id, false); |
| 1049 | return; |
| 1050 | } |
| 1051 | |
| 1052 | boolean answered = jargs.getBoolean(0); |
| 1053 | if (message.answered.equals(answered)) |
| 1054 | return; |
| 1055 | |
| 1056 | // This will be fixed when moving the message |
| 1057 | if (message.uid == null) |
| 1058 | return; |
| 1059 | |
| 1060 | Message imessage = ifolder.getMessageByUID(message.uid); |
| 1061 | if (imessage == null) |
| 1062 | throw new MessageRemovedException(); |
| 1063 | |
| 1064 | imessage.setFlag(Flags.Flag.ANSWERED, answered); |
| 1065 | |
| 1066 | db.message().setMessageAnswered(message.id, answered); |
| 1067 | } |
| 1068 | |
| 1069 | private static void onKeyword(Context context, JSONArray jargs, EntityFolder folder, EntityMessage message, IMAPFolder ifolder) throws MessagingException, JSONException { |
| 1070 | // Set/reset user flag |
no test coverage detected