Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -184,7 +184,7 @@ dependencies {
/// dependencies for app building
implementation name: 'touch-image-view'
implementation 'com.android.support:multidex:1.0.2'
compile 'com.github.nextcloud:android-library:1.0.30'
compile 'com.github.nextcloud:android-library:1.0.31'
implementation "com.android.support:support-v4:${supportLibraryVersion}"
implementation "com.android.support:design:${supportLibraryVersion}"
implementation 'com.jakewharton:disklrucache:2.0.2'
Expand Down
4 changes: 4 additions & 0 deletions src/gplay/java/com/owncloud/android/utils/PushUtils.java
Original file line number Diff line number Diff line change
Expand Up @@ -247,6 +247,10 @@ public static void pushRegistrationToServer() {
arbitraryDataProvider.storeOrUpdateKeyValue(account.name, KEY_PUSH,
gson.toJson(pushArbitraryData));
}
} else if (remoteOperationResult.getCode() ==
RemoteOperationResult.ResultCode.ACCOUNT_USES_STANDARD_PASSWORD) {
arbitraryDataProvider.storeOrUpdateKeyValue(account.name,
AccountUtils.ACCOUNT_USES_STANDARD_PASSWORD, "true");
}
} catch (com.owncloud.android.lib.common.accounts.AccountUtils.AccountNotFoundException e) {
Log_OC.d(TAG, "Failed to find an account");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ public class AccountUtils {

public static final int ACCOUNT_VERSION = 1;
public static final int ACCOUNT_VERSION_WITH_PROPER_ID = 2;
public static final String ACCOUNT_USES_STANDARD_PASSWORD = "ACCOUNT_USES_STANDARD_PASSWORD";

/**
* Can be used to get the currently selected ownCloud {@link Account} in the
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
import android.graphics.PorterDuff;
import android.os.Bundle;
import android.support.design.widget.BottomNavigationView;
import android.support.design.widget.Snackbar;
import android.support.v4.widget.SwipeRefreshLayout;
import android.support.v7.widget.DividerItemDecoration;
import android.support.v7.widget.LinearLayoutManager;
Expand All @@ -44,6 +45,7 @@
import com.owncloud.android.MainApp;
import com.owncloud.android.R;
import com.owncloud.android.authentication.AccountUtils;
import com.owncloud.android.datamodel.ArbitraryDataProvider;
import com.owncloud.android.lib.common.OwnCloudAccount;
import com.owncloud.android.lib.common.OwnCloudClient;
import com.owncloud.android.lib.common.OwnCloudClientManagerFactory;
Expand All @@ -55,6 +57,7 @@
import com.owncloud.android.ui.adapter.NotificationListAdapter;
import com.owncloud.android.utils.AnalyticsUtils;
import com.owncloud.android.utils.DisplayUtils;
import com.owncloud.android.utils.PushUtils;
import com.owncloud.android.utils.ThemeUtils;

import java.io.IOException;
Expand Down Expand Up @@ -140,6 +143,32 @@ public void onRefresh() {
}
});

Context context = getApplicationContext();
String pushUrl = context.getResources().getString(R.string.push_server_url);

if (pushUrl.isEmpty()) {
Snackbar.make(emptyContentContainer, R.string.push_notifications_not_implemented,
Snackbar.LENGTH_INDEFINITE).show();
} else {
Account account = AccountUtils.getCurrentOwnCloudAccount(context);
ArbitraryDataProvider arbitraryDataProvider = new ArbitraryDataProvider(getContentResolver());

boolean usesOldLogin = arbitraryDataProvider.getBooleanValue(account.name,
AccountUtils.ACCOUNT_USES_STANDARD_PASSWORD);

if (usesOldLogin) {
Snackbar.make(emptyContentContainer, R.string.push_notifications_old_login,
Snackbar.LENGTH_INDEFINITE).show();
} else {
String pushValue = arbitraryDataProvider.getValue(account.name, PushUtils.KEY_PUSH);

if (pushValue == null || pushValue.isEmpty()) {
Snackbar.make(emptyContentContainer, R.string.push_notifications_temp_error,
Snackbar.LENGTH_INDEFINITE).show();
}
}
}

setupContent();
}

Expand Down
3 changes: 3 additions & 0 deletions src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -706,4 +706,7 @@
<string name="prefs_sourcecode">Get source code</string>
<string name="prefs_license">License</string>
<string name="prefs_gpl_v2" translatable="false">GNU General Public License, version 2</string>
<string name="push_notifications_not_implemented">Push notifications disabled due to dependencies on proprietary Google Play services.</string>
<string name="push_notifications_old_login">No push notifications due to outdated login session. Please consider re-adding your account.</string>
<string name="push_notifications_temp_error">Push notifications currently not available.</string>
</resources>