Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package atchat.aegis.com.myapplication;
- import android.app.AlertDialog;
- import android.content.Context;
- import android.content.DialogInterface;
- import android.net.Uri;
- import android.os.AsyncTask;
- import android.os.Bundle;
- import android.support.v4.app.Fragment;
- import android.view.LayoutInflater;
- import android.view.View;
- import android.view.ViewGroup;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.SeekBar;
- import android.widget.TextView;
- import android.widget.Toast;
- import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
- import org.springframework.web.client.RestTemplate;
- import java.util.concurrent.ExecutionException;
- import application.Message.UpdatePairingDistanceMessage;
- import application.Message.UpdatePasswordMessage;
- import application.Users.LoggedInUserContainer;
- import application.Users.User;
- public class SettingsFragment extends Fragment {
- private onSettingsFragmentInteractionListener mListener;
- private static SeekBar Distance_Slider;
- private static TextView Distance_Text;
- private User user;
- private String website;
- EditText changedName;
- TextView chname;
- Button applyName;
- Button changenameButtonClick;
- public SettingsFragment() {
- // Required empty public constructor
- }
- public static SettingsFragment newInstance(){
- SettingsFragment fragment = new SettingsFragment();
- return fragment;
- }
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- }
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,
- Bundle savedInstanceState) {
- website = getString(R.string.localhost);
- user = LoggedInUserContainer.getInstance().getUser();
- // Inflate the layout for this fragment
- View view = inflater.inflate(R.layout.fragment_settings, container, false);
- //changedName = (EditText) view.findViewById(R.id.changeAlias);
- // changedName.setHint("Change Name ("+(String)LoggedInUserContainer.getInstance().getUser().getAlias() + ")");
- // chname = (TextView) view.findViewById(R.id.name1);
- // applyName = (Button) view.findViewById(R.id.namebutton);
- changenameButtonClick = (Button) view.findViewById(R.id.changeNameButton);
- changenameButtonClick.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- AlertDialog.Builder builder = new AlertDialog.Builder(getContext());
- builder.setTitle("Name");
- final EditText updatedName = new EditText(view.getContext());
- updatedName.setHint((String)LoggedInUserContainer.getInstance().getUser().getAlias());
- builder.setView(updatedName);
- builder.setPositiveButton("Update", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialogInterface, int i) {
- String finaltext = updatedName.getText().toString();
- Toast.makeText(getContext(), "Name has been updated!", Toast.LENGTH_SHORT).show();
- // try {
- // new UpdatePassword(finaltext).execute();
- // } catch (InterruptedException e) {
- // e.printStackTrace();
- // } catch (ExecutionException e) {
- // e.printStackTrace();
- // }
- }
- });
- builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialogInterface, int i) {
- Toast.makeText(getContext(), "Cancelled", Toast.LENGTH_SHORT).show();
- }
- });
- builder.show();
- // builder.setView()
- }
- });
- // applyName.setOnClickListener(new View.OnClickListener() {
- // @Override
- // public void onClick(View view) {
- // changedName.setVisibility(View.VISIBLE);
- // // String finaltext = changedName.getText().toString();
- // chname.setText(finaltext);
- // }
- // });
- // String name = (String)chname.getText();
- Distance_Slider = (SeekBar) view.findViewById(R.id.distanceSlider);
- Distance_Text = (TextView) view.findViewById(R.id.distanceText);
- Distance_Text.setText("Distance: " + LoggedInUserContainer.getInstance().getUser().getPairingDistance() + " km");
- Distance_Slider.setMax(20);
- Distance_Slider.setProgress((int)LoggedInUserContainer.getInstance().getUser().getPairingDistance());
- Distance_Slider.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
- double DistanceValue = LoggedInUserContainer.getInstance().getUser().getPairingDistance();
- @Override
- public void onProgressChanged(SeekBar seekBar, int i, boolean b) {
- DistanceValue = Math.min((0.5 + (double)(i)/2) , 10);
- Distance_Text.setText("Distance: " + DistanceValue + " km" );
- }
- @Override
- public void onStartTrackingTouch(SeekBar seekBar) {
- }
- @Override
- public void onStopTrackingTouch(SeekBar seekBar) {
- try {
- new UpdatePairingDistance(DistanceValue).execute().get();
- } catch (InterruptedException e) {
- e.printStackTrace();
- } catch (ExecutionException e) {
- e.printStackTrace();
- }
- Distance_Text.setText("Distance: " + DistanceValue + " km");
- }
- });
- return view;
- }
- public void onViewCreated(View view, Bundle savedInstanceState) {
- }
- // TODO: Rename method, update argument and hook method into UI event
- public void onButtonPressed(Uri uri) {
- if (mListener != null) {
- mListener.onSettingsFragmentInteraction(uri);
- }
- }
- @Override
- public void onAttach(Context context) {
- super.onAttach(context);
- if (context instanceof onSettingsFragmentInteractionListener) {
- mListener = (onSettingsFragmentInteractionListener) context;
- } else {
- throw new RuntimeException(context.toString()
- + " must implement onSettingsFragmentInteractionListener");
- }
- }
- @Override
- public void onDetach() {
- super.onDetach();
- mListener = null;
- }
- public interface onSettingsFragmentInteractionListener {
- void onSettingsFragmentInteraction(Uri uri);
- }
- private class UpdatePairingDistance extends AsyncTask<Void, Void, Void> {
- private double distance;
- private UpdatePairingDistance(double distance){
- this.distance = distance;
- }
- @Override
- protected Void doInBackground(Void... voids) {
- UpdatePairingDistanceMessage updm = new UpdatePairingDistanceMessage(distance);
- updm.setSender(user.getId());
- final String url = website+"user/updatePairingDistance";
- RestTemplate restTemplate = new RestTemplate();
- restTemplate.getMessageConverters().add(new MappingJackson2HttpMessageConverter());
- try {
- restTemplate.postForObject(url, updm, User.class);
- }catch (Exception e){
- }
- return null;
- }
- }
- private class UpdatePassword extends AsyncTask<Void, Void, Void> {
- private String changedPassword;
- private UpdatePassword(String changedPassword){
- this.changedPassword = changedPassword;
- }
- @Override
- protected Void doInBackground(Void... voids) {
- UpdatePasswordMessage upw = new UpdatePasswordMessage(changedPassword);
- upw.setSender(user.getId());
- final String url = website+"user/updatePassword";
- RestTemplate restTemplate = new RestTemplate();
- restTemplate.getMessageConverters().add(new MappingJackson2HttpMessageConverter());
- try {
- restTemplate.postForObject(url, upw, User.class);
- }catch (Exception e){
- }
- return null;
- }
- }
- }
- _------------------------------------------------------------------------------------------
- <resources>
- <!-- Base application theme. -->
- <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
- <!-- Customize your theme here. -->
- <item name="colorPrimary">@color/colorPrimary</item>
- <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
- <item name="colorAccent">@color/colorAccent</item>
- </style>
- <style name="EditTextHint" parent="TextAppearance.AppCompat">
- <item name="colorAccent">@android:color/white</item>
- <item name="android:textColorHint">@color/AtChatYellow</item>
- <item name="colorControlNormal">@color/AtChatYellow</item>
- <item name="colorControlActivated">@color/AtChatYellow</item>
- <item name="colorControlHighlight">@color/AtChatYellow</item>
- </style>
- </resources>
- __---------------------------------------------------------------------------------------------------
- package application.Message;
- public class UpdatePasswordMessage extends Message{
- private String changedPassword;
- public UpdatePasswordMessage(String changedPassword) {
- }
- public String getChangedPassword() {
- return changedPassword;
- }
- public void setChangedPassword(String changedPassword) {
- this.changedPassword = changedPassword;
- }
- }
- --------------------------------------------------------------------------------------------
- <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto"
- xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- tools:context="atchat.aegis.com.myapplication.SettingsFragment">
- <SeekBar
- android:id="@+id/distanceSlider"
- android:layout_width="350dp"
- android:layout_height="wrap_content"
- android:layout_marginTop="60dp"
- app:layout_constraintRight_toRightOf="parent"
- app:layout_constraintTop_toBottomOf="parent"
- app:layout_constraintLeft_toLeftOf="parent" />
- <TextView
- android:id="@+id/distanceText"
- android:layout_width="wrap_content"
- android:layout_height="0dp"
- android:layout_marginLeft="40dp"
- android:layout_marginTop="20dp"
- android:text="Pairing distance in km"
- android:textColor="@color/AtChatYellow"
- app:layout_constraintLeft_toLeftOf="parent"
- app:layout_constraintTop_toTopOf="parent" />
- <!--<EditText-->
- <!--android:layout_width="100dp"-->
- <!--android:layout_height="50dp"-->
- <!--android: android:text="dhi"-->
- <!--andro-->
- <!--app:layout_constraintTop_toTopOf="parent"-->
- <!--app:layout_constraintLeft_toLeftOf="parent"/>-->
- <!---->
- <Button
- android:id="@+id/logoutButton1"
- android:layout_width="368dp"
- android:layout_height="60dp"
- android:layout_marginBottom="8dp"
- android:layout_marginStart="8dp"
- android:layout_marginTop="8dp"
- android:backgroundTint="#00000000"
- android:text="Logout"
- android:textAlignment="textStart"
- android:textColor="@color/AtChatYellow"
- app:layout_constraintBottom_toBottomOf="parent"
- app:layout_constraintEnd_toEndOf="parent"
- app:layout_constraintHorizontal_bias="0.0"
- app:layout_constraintLeft_toLeftOf="parent"
- app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="parent"
- app:layout_constraintVertical_bias="0.983" />
- <TextView
- android:id="@+id/name1"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginEnd="8dp"
- android:layout_marginStart="8dp"
- android:text="TextView"
- app:layout_constraintEnd_toEndOf="parent"
- app:layout_constraintStart_toStartOf="parent"
- tools:layout_editor_absoluteY="274dp" />
- <Button
- android:id="@+id/namebutton"
- android:layout_width="92dp"
- android:layout_height="58dp"
- android:layout_marginBottom="8dp"
- android:layout_marginEnd="8dp"
- android:layout_marginStart="8dp"
- android:layout_marginTop="8dp"
- android:text="Apply"
- app:layout_constraintBottom_toBottomOf="parent"
- app:layout_constraintEnd_toEndOf="parent"
- app:layout_constraintHorizontal_bias="0.971"
- app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="parent"
- app:layout_constraintVertical_bias="0.748" />
- <Button
- android:id="@+id/changeNameButton"
- android:layout_width="368dp"
- android:layout_height="60dp"
- android:layout_marginBottom="352dp"
- android:layout_marginStart="8dp"
- android:layout_marginTop="8dp"
- android:backgroundTint="#00000000"
- android:text="Change Name"
- android:textAlignment="textStart"
- android:textColor="@color/AtChatYellow"
- app:layout_constraintBottom_toBottomOf="parent"
- app:layout_constraintEnd_toEndOf="parent"
- app:layout_constraintHorizontal_bias="0.0"
- app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="parent"
- app:layout_constraintVertical_bias="0.659" />
- </android.support.constraint.ConstraintLayout>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement