implements TaskCallback, NewTransactionFragment.OnNewTransactionFragmentInteractionListener,
QR.QRScanTrigger, QR.QRScanResultReceiver, DescriptionSelectedCallback,
FabManager.FabHandler {
+ final String TAG = "new-t-a";
private NavController navController;
private NewTransactionModel model;
private ActivityResultLauncher<Void> qrScanLauncher;
}
@Override
protected void initProfile() {
- String profileUUID = getIntent().getStringExtra("profile_uuid");
+ long profileId = getIntent().getLongExtra(PARAM_PROFILE_ID, 0);
+ int profileHue = getIntent().getIntExtra(PARAM_THEME, -1);
- if (profileUUID != null) {
- mProfile = Data.getProfile(profileUUID);
- if (mProfile == null)
- finish();
- Data.setCurrentProfile(mProfile);
+ if (profileHue < 0) {
+ Logger.debug(TAG, "Started with invalid/missing theme; quitting");
+ finish();
+ return;
}
- else
- super.initProfile();
+
+ if (profileId <= 0) {
+ Logger.debug(TAG, "Started with invalid/missing profile_id; quitting");
+ finish();
+ return;
+ }
+
+ setupProfileColors(profileHue);
+ initProfile(profileId);
}
@Override
public void finish() {
}
@Override
public boolean onRow(@NonNull Cursor cursor) {
- final String profileUUID = cursor.getString(0);
+ final long profileId = cursor.getLong(0);
final int transactionId = cursor.getInt(1);
- runOnUiThread(() -> model.loadTransactionIntoModel(profileUUID, transactionId));
+ runOnUiThread(() -> model.loadTransactionIntoModel(profileId, transactionId));
return false; // limit 1, by the way
}
@Override
}
@Override
public boolean onRow(@NonNull Cursor cursor) {
- final String profileUUID = cursor.getString(0);
+ final long profileId = cursor.getLong(0);
final int transactionId = cursor.getInt(1);
- runOnUiThread(() -> model.loadTransactionIntoModel(profileUUID,
+ runOnUiThread(() -> model.loadTransactionIntoModel(profileId,
transactionId));
return false;
}