use of com.backendless.examples.endless.matchmaker.models.local.Gender in project Android-SDK by Backendless.
the class ProfileActivity method onCreate.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.profile);
TextView nameField = (TextView) findViewById(R.id.nameField);
TextView genderField = (TextView) findViewById(R.id.genderField);
TextView ageField = (TextView) findViewById(R.id.ageField);
ImageView avatarImage = (ImageView) findViewById(R.id.avatarImage);
ImageView genderImage = (ImageView) findViewById(R.id.genderImage);
BackendlessUser currentUser = Backendless.UserService.CurrentUser();
// Checking CurrentUser
if (currentUser == null) {
Lifecycle.runLoginActivity(ProfileActivity.this);
finish();
} else {
nameField.setText((String) currentUser.getProperty(Defaults.NAME_PROPERTY));
Gender userGender = Gender.valueOf((String) currentUser.getProperty(Defaults.GENDER_PROPERTY));
genderField.setText(userGender.toString());
if (userGender == Gender.male) {
avatarImage.setImageDrawable(getResources().getDrawable(R.drawable.avatar_default_male));
genderImage.setImageDrawable(getResources().getDrawable(R.drawable.icon_male));
} else {
avatarImage.setImageDrawable(getResources().getDrawable(R.drawable.avatar_default_female));
genderImage.setImageDrawable(getResources().getDrawable(R.drawable.icon_female));
}
Date birthDate = (Date) currentUser.getProperty(Defaults.BIRTH_DATE_PROPERTY);
ageField.setText(String.valueOf(SimpleMath.getAgeFromDate(birthDate)));
}
findViewById(R.id.findButton).setOnClickListener(findMatchesListener);
findViewById(R.id.editFoodPreferenceButton).setOnClickListener(getEditPreferencesListener(PreferenceTheme.FOOD));
findViewById(R.id.editMusicPreferenceButton).setOnClickListener(getEditPreferencesListener(PreferenceTheme.MUSIC));
findViewById(R.id.editHobbiesPreferenceButton).setOnClickListener(getEditPreferencesListener(PreferenceTheme.HOBBIES));
findViewById(R.id.editTravelPreferenceButton).setOnClickListener(getEditPreferencesListener(PreferenceTheme.TRAVEL));
Button button_logout = (Button) findViewById(R.id.buttonLogOut);
button_logout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
progressDialog = UIFactory.getDefaultProgressDialog(ProfileActivity.this);
Backendless.UserService.logout(new AsyncCallback<Void>() {
@Override
public void handleResponse(Void aVoid) {
Lifecycle.runLoginActivity(ProfileActivity.this);
finish();
progressDialog.cancel();
}
@Override
public void handleFault(BackendlessFault backendlessFault) {
progressDialog.cancel();
Toast.makeText(ProfileActivity.this, backendlessFault.getMessage(), Toast.LENGTH_LONG).show();
}
});
}
});
}
use of com.backendless.examples.endless.matchmaker.models.local.Gender in project Android-SDK by Backendless.
the class MatchViewActivity method onCreate.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.matchview);
progressDialog = UIFactory.getDefaultProgressDialog(this);
TextView nameField = (TextView) findViewById(R.id.nameField);
TextView genderField = (TextView) findViewById(R.id.genderField);
TextView ageField = (TextView) findViewById(R.id.ageField);
ImageView avatarImage = (ImageView) findViewById(R.id.avatarImage);
ImageView genderImage = (ImageView) findViewById(R.id.genderImage);
matchPercentField = (TextView) findViewById(R.id.matchPercents);
foodMatchValue = (TextView) findViewById(R.id.foodMatchValue);
foodProgressBar = (ProgressBar) findViewById(R.id.foodProgressBar);
musicMatchValue = (TextView) findViewById(R.id.musicMatchValue);
musicProgressBar = (ProgressBar) findViewById(R.id.musicProgressBar);
hobbiesMatchValue = (TextView) findViewById(R.id.hobbiesMatchValue);
hobbiesProgressBar = (ProgressBar) findViewById(R.id.hobbiesProgressBar);
travelMatchValue = (TextView) findViewById(R.id.travelMatchValue);
travelProgressBar = (ProgressBar) findViewById(R.id.travelProgressBar);
currentUserGeoPoint = (GeoPoint) getIntent().getSerializableExtra(Defaults.CURRENT_USER_GEO_POINT_BUNDLE_TAG);
targetUserGeoPoint = (GeoPoint) getIntent().getSerializableExtra(Defaults.TARGET_USER_GEO_POINT_BUNDLE_TAG);
triger = getIntent().getStringExtra(Defaults.TRIGER);
String targetUserEmail = targetUserGeoPoint.getMetadata(BackendlessUser.EMAIL_KEY);
targetUserName = targetUserGeoPoint.getMetadata(Defaults.NAME_PROPERTY);
Gender targetUserGender = Gender.valueOf(targetUserGeoPoint.getMetadata(Defaults.GENDER_PROPERTY));
targetUserDeviceRegistrationId = targetUserGeoPoint.getMetadata(Defaults.DEVICE_REGISTRATION_ID_PROPERTY);
Date userBirthDate;
try {
userBirthDate = Defaults.DEFAULT_DATE_FORMATTER.parse(targetUserGeoPoint.getMetadata(Defaults.BIRTH_DATE_PROPERTY));
} catch (ParseException e) {
progressDialog.cancel();
Log.logLine(e);
return;
}
Button actionButton = (Button) findViewById(R.id.actionButton);
if (!targetUserGeoPoint.getMetadata().containsKey(Backendless.UserService.CurrentUser().getEmail()) || !currentUserGeoPoint.getMetadata().containsKey(targetUserEmail)) {
actionButton.setText(getResources().getText(R.string.button_match_ping));
actionButton.setOnClickListener(pingUserListener);
} else {
actionButton.setText(getResources().getText(R.string.button_sendmessage));
actionButton.setOnClickListener(sendMessageListener);
}
nameField.setText(targetUserName);
genderField.setText(targetUserGender.name());
if (targetUserGender == Gender.male) {
avatarImage.setImageDrawable(getResources().getDrawable(R.drawable.avatar_default_male));
genderImage.setImageDrawable(getResources().getDrawable(R.drawable.icon_male));
} else {
avatarImage.setImageDrawable(getResources().getDrawable(R.drawable.avatar_default_female));
genderImage.setImageDrawable(getResources().getDrawable(R.drawable.icon_female));
}
ageField.setText(String.valueOf(SimpleMath.getAgeFromDate(userBirthDate)));
Map<String, String> metaDataMap = currentUserGeoPoint.getMetadata();
Map<String, String> metaDataFood = new HashMap<String, String>();
Map<String, String> metaDataMusic = new HashMap<String, String>();
Map<String, String> metaDataHobbies = new HashMap<String, String>();
Map<String, String> metaDataTravel = new HashMap<String, String>();
for (Map.Entry<String, String> map : metaDataMap.entrySet()) {
String value = map.getValue();
String key = map.getKey();
if (value.equals(foodName))
metaDataFood.put(key, foodName);
if (value.equals(musicName))
metaDataMusic.put(key, musicName);
if (value.equals(hobbiesName))
metaDataHobbies.put(key, hobbiesName);
if (value.equals(travelName))
metaDataTravel.put(key, travelName);
}
int maxPoints = 10;
if (!metaDataFood.isEmpty()) {
BackendlessGeoQuery backendlessGeoQuery = new BackendlessGeoQuery(metaDataFood, maxPoints);
backendlessGeoQuery.setPageSize(50);
backendlessGeoQuery.setIncludeMeta(true);
food = false;
Backendless.Geo.relativeFind(backendlessGeoQuery, gotFoodCallback);
} else {
foodMatchValue.setText(String.valueOf(0));
foodProgressBar.setProgress(0);
food = true;
}
if (!metaDataMusic.isEmpty()) {
BackendlessGeoQuery backendlessGeoQuery = new BackendlessGeoQuery(metaDataMusic, maxPoints);
backendlessGeoQuery.setPageSize(50);
backendlessGeoQuery.setIncludeMeta(true);
music = false;
Backendless.Geo.relativeFind(backendlessGeoQuery, gotMusicCallback);
} else {
musicMatchValue.setText(String.valueOf(0));
musicProgressBar.setProgress(0);
music = true;
}
if (!metaDataHobbies.isEmpty()) {
BackendlessGeoQuery backendlessGeoQuery = new BackendlessGeoQuery(metaDataHobbies, maxPoints);
backendlessGeoQuery.setPageSize(50);
backendlessGeoQuery.setIncludeMeta(true);
hobbies = false;
Backendless.Geo.relativeFind(backendlessGeoQuery, gotHobbiesCallback);
} else {
hobbiesMatchValue.setText(String.valueOf(0));
hobbiesProgressBar.setProgress(0);
hobbies = true;
}
if (!metaDataTravel.isEmpty()) {
BackendlessGeoQuery backendlessGeoQuery = new BackendlessGeoQuery(metaDataTravel, maxPoints);
backendlessGeoQuery.setPageSize(50);
backendlessGeoQuery.setIncludeMeta(true);
travel = false;
Backendless.Geo.relativeFind(backendlessGeoQuery, gotTravelCallback);
} else {
travelMatchValue.setText(String.valueOf(0));
travelProgressBar.setProgress(0);
travel = true;
}
}
Aggregations