(Context context, EntityMessage message, JSONObject jargs)
| 841 | } |
| 842 | |
| 843 | private boolean onActionMove(Context context, EntityMessage message, JSONObject jargs) { |
| 844 | long target = jargs.optLong("target", -1); |
| 845 | String create = jargs.optString("create"); |
| 846 | boolean seen = jargs.optBoolean("seen"); |
| 847 | boolean thread = jargs.optBoolean("thread"); |
| 848 | |
| 849 | DB db = DB.getInstance(context); |
| 850 | |
| 851 | EntityFolder folder = db.folder().getFolder(target); |
| 852 | if (folder == null) |
| 853 | throw new IllegalArgumentException("Rule move to folder not found name=" + name); |
| 854 | |
| 855 | if (!TextUtils.isEmpty(create)) { |
| 856 | Calendar calendar = Calendar.getInstance(); |
| 857 | calendar.setTimeInMillis(message.received); |
| 858 | String year = String.format(Locale.ROOT, "%04d", calendar.get(Calendar.YEAR)); |
| 859 | String month = String.format(Locale.ROOT, "%02d", calendar.get(Calendar.MONTH) + 1); |
| 860 | String week = String.format(Locale.ROOT, "%02d", calendar.get(Calendar.WEEK_OF_YEAR)); |
| 861 | String day = String.format(Locale.ROOT, "%02d", calendar.get(Calendar.DAY_OF_MONTH)); |
| 862 | |
| 863 | create = create.replace("$year$", year); |
| 864 | create = create.replace("$month$", month); |
| 865 | create = create.replace("$week$", week); |
| 866 | create = create.replace("$day$", day); |
| 867 | |
| 868 | String fromUser = null; |
| 869 | String fromExtra = null; |
| 870 | String fromDomain = null; |
| 871 | if (message.from != null && |
| 872 | message.from.length > 0 && |
| 873 | message.from[0] instanceof InternetAddress) { |
| 874 | InternetAddress from = (InternetAddress) message.from[0]; |
| 875 | fromUser = UriHelper.getEmailUser(from.getAddress()); |
| 876 | fromExtra = UriHelper.getEmailExtra(from.getAddress()); |
| 877 | fromDomain = UriHelper.getEmailDomain(from.getAddress()); |
| 878 | } |
| 879 | |
| 880 | String toUser = null; |
| 881 | String toExtra = null; |
| 882 | String toDomain = null; |
| 883 | if (message.to != null && |
| 884 | message.to.length > 0 && |
| 885 | message.to[0] instanceof InternetAddress) { |
| 886 | InternetAddress to = (InternetAddress) message.to[0]; |
| 887 | toUser = UriHelper.getEmailUser(to.getAddress()); |
| 888 | toExtra = UriHelper.getEmailExtra(to.getAddress()); |
| 889 | toDomain = UriHelper.getEmailDomain(to.getAddress()); |
| 890 | } |
| 891 | |
| 892 | create = create.replace("$user$", fromUser == null ? "" : fromUser); |
| 893 | create = create.replace("$extra$", fromExtra == null ? "" : fromExtra); |
| 894 | create = create.replace("$domain$", fromDomain == null ? "" : fromDomain); |
| 895 | |
| 896 | create = create.replace("$user:from$", fromUser == null ? "" : fromUser); |
| 897 | create = create.replace("$extra:from$", fromExtra == null ? "" : fromExtra); |
| 898 | create = create.replace("$domain:from$", fromDomain == null ? "" : fromDomain); |
| 899 | |
| 900 | create = create.replace("$user:to$", toUser == null ? "" : toUser); |
no test coverage detected