use of de.geeksfactory.opacclient.reminder.ReminderHelper in project opacclient by opacapp.
the class SnoozeDatePickerActivity method onTimeSet.
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
dt = dt.withHourOfDay(hourOfDay).withMinuteOfHour(minute);
long alarmId = getIntent().getLongExtra(ReminderBroadcastReceiver.EXTRA_ALARM_ID, -1);
AccountDataSource adata = new AccountDataSource(this);
Alarm alarm = adata.getAlarm(alarmId);
if (alarm == null) {
throw new DataIntegrityException("Trying to snooze unknown alarm ID " + alarmId);
}
alarm.notified = false;
alarm.notificationTime = dt;
adata.updateAlarm(alarm);
// dismiss notification
NotificationManager manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
manager.cancel((int) alarm.id);
// reschedule alarms
new ReminderHelper((OpacClient) getApplication()).scheduleAlarms();
finish();
}
use of de.geeksfactory.opacclient.reminder.ReminderHelper in project opacclient by opacapp.
the class MainPreferenceFragment method onCreatePreferences.
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
this.context = getActivity();
addPreferencesFromResource(R.xml.settings);
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH || !context.getPackageManager().hasSystemFeature("android.hardware.nfc")) {
if (findPreference("nfc_search") != null) {
findPreference("nfc_search").setEnabled(false);
}
}
Preference assistant = findPreference("accounts");
assistant.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference arg0) {
((OpacClient) context.getApplication()).openAccountList(context);
return false;
}
});
if (!ebooksSupported()) {
((PreferenceCategory) findPreference("cat_web_opac")).removePreference(findPreference("email"));
}
CheckBoxPreference notification = (CheckBoxPreference) findPreference("notification_service");
if (notification != null) {
notification.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
boolean enabled = (Boolean) newValue;
new ReminderHelper((OpacClient) getActivity().getApplication()).updateAlarms(enabled);
return true;
}
});
}
ListPreference warning = (ListPreference) findPreference("notification_warning");
if (warning != null) {
warning.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getActivity());
// int oldWarning = Integer.parseInt(prefs.getString("notification_warning",
// "3"));
int newWarning = Integer.parseInt((String) newValue);
new ReminderHelper((OpacClient) getActivity().getApplication()).updateAlarms(newWarning);
return true;
}
});
}
Preference meta_run_check = findPreference("meta_run_check");
if (meta_run_check != null) {
meta_run_check.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference arg0) {
SyncAccountJob.runImmediately();
return false;
}
});
}
Preference meta = findPreference("meta_clear");
if (meta != null) {
meta.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference arg0) {
AccountDataSource adata = new AccountDataSource(context);
adata.invalidateCachedData();
new ReminderHelper((OpacClient) context.getApplication()).updateAlarms(-1);
SearchFieldDataSource sfdata = new JsonSearchFieldDataSource(context);
sfdata.clearAll();
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(getActivity());
sp.edit().remove("reservation_fee_warning_ignore").apply();
SyncAccountJob.runImmediately();
return false;
}
});
}
final Preference updateLibraryConfig = findPreference("update_library_config");
if (updateLibraryConfig != null) {
updateLibraryConfig.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
IntentFilter successFilter = new IntentFilter(LibraryConfigUpdateService.ACTION_SUCCESS);
IntentFilter failureFilter = new IntentFilter(LibraryConfigUpdateService.ACTION_FAILURE);
BroadcastReceiver receiver = new LibraryConfigServiceReceiver(updateLibraryConfig);
LocalBroadcastManager.getInstance(context).registerReceiver(receiver, successFilter);
LocalBroadcastManager.getInstance(context).registerReceiver(receiver, failureFilter);
Intent i = new Intent(context, LibraryConfigUpdateService.class);
context.startService(i);
DialogFragment newFragment = ProgressDialogFragment.getInstance(R.string.updating_library_config);
showDialog(newFragment);
updateLibraryConfig.setEnabled(false);
return false;
}
});
refreshLastConfigUpdate(updateLibraryConfig);
}
final Preference resetLibraryConfig = findPreference("reset_library_config");
if (resetLibraryConfig != null) {
PreferenceDataSource prefs = new PreferenceDataSource(getActivity());
resetLibraryConfig.setEnabled(prefs.hasBundledConfiguration());
resetLibraryConfig.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
LibraryConfigUpdateService.clearConfigurationUpdates(getContext());
if (getView() != null) {
Snackbar.make(getView(), R.string.library_config_reset, Snackbar.LENGTH_SHORT).show();
refreshLastConfigUpdate(updateLibraryConfig);
}
return false;
}
});
}
}
use of de.geeksfactory.opacclient.reminder.ReminderHelper in project opacclient by opacapp.
the class OpacActivity method onStart.
@Override
protected void onStart() {
super.onStart();
if (app.getLibrary() == null) {
// Create new
if (app.getAccount() != null) {
try {
InputStream stream = getAssets().open(OpacClient.ASSETS_BIBSDIR + "/" + app.getAccount().getLibrary() + ".json");
stream.close();
} catch (IOException e) {
AccountDataSource data = new AccountDataSource(this);
data.remove(app.getAccount());
List<Account> available_accounts = data.getAllAccounts();
if (available_accounts.size() > 0) {
((OpacClient) getApplication()).setAccount(available_accounts.get(0).getId());
}
new ReminderHelper(app).generateAlarms();
if (app.getLibrary() != null) {
return;
}
}
}
app.addFirstAccount(this);
}
}
use of de.geeksfactory.opacclient.reminder.ReminderHelper in project opacclient by opacapp.
the class AccountEditActivity method delete.
private void delete() {
AccountDataSource data = new AccountDataSource(this);
data.remove(account);
// Check whether he deleted account was selected
if (((OpacClient) getApplication()).getAccount().getId() == account.getId()) {
List<Account> available_accounts = data.getAllAccounts();
if (available_accounts.size() == 0) {
((OpacClient) getApplication()).setAccount(0);
((OpacClient) getApplication()).addFirstAccount(this);
} else {
((OpacClient) getApplication()).setAccount(available_accounts.get(0).getId());
}
}
new ReminderHelper((OpacClient) getApplication()).generateAlarms();
}
Aggregations