Android Open Source - voltag Registration Fragment






From Project

Back to project page voltag.

License

The source code is released under:

MIT License

If you think the Android project voltag listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package edu.purdue.voltag.fragments;
//from w w  w.ja v a 2s . c  o m
import android.app.Activity;
import android.app.Fragment;
import android.content.Context;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.provider.Settings;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.inputmethod.InputMethodManager;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import edu.purdue.voltag.MainActivity;
import edu.purdue.voltag.R;
import edu.purdue.voltag.data.Player;
import edu.purdue.voltag.data.VoltagDB;
import edu.purdue.voltag.interfaces.OnPlayerRegisteredListener;
import edu.purdue.voltag.tasks.RegisterPlayerTask;


/*
 * A simple {@link android.support.v4.app.Fragment} subclass.
 * Activities that contain this fragment must implement the
 * {@link RegistrationFragment.OnFragmentInteractionListener} interface
 * to handle interaction events.
 * Use the {@link RegistrationFragment#newInstance} factory method to
 * create an instance of this fragment.
 *
 */
public class RegistrationFragment extends Fragment implements View.OnClickListener, OnPlayerRegisteredListener {

    private EditText emailBox;
    private EditText nameBox;
    private Button regButton;
    private VoltagDB db;

    public RegistrationFragment() {
        // Required empty public constructor
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        View v = inflater.inflate(R.layout.fragment_registration, container, false);
        emailBox = (EditText) v.findViewById(R.id.etxt_email);
        nameBox = (EditText) v.findViewById(R.id.etxt_displayName);
        regButton = (Button) v.findViewById(R.id.btn_register);
        regButton.setOnClickListener(this);

        emailBox.addTextChangedListener(new EmailTextWatcher(getActivity(), emailBox, regButton));
        return v;
    }

    @Override
    public void onAttach(Activity activity) {
        super.onAttach(activity);
        db = VoltagDB.getDB(getActivity());
    }

    /**
     * Pulls the login data and registers the player.
     * @param view
     */
    @Override
    public void onClick(View view) {

        InputMethodManager imm = (InputMethodManager) getActivity().getSystemService(
                Context.INPUT_METHOD_SERVICE);
        imm.hideSoftInputFromWindow(nameBox.getWindowToken(), 0);

        String email = emailBox.getText().toString();
        String name = nameBox.getText().toString();

        if(!android.util.Patterns.EMAIL_ADDRESS.matcher(email).matches()) {
            Log.e("Email", "Email is not valid. Using anyway...");
            Toast.makeText(getActivity(), "Email is not valid.", Toast.LENGTH_SHORT);
        } else {
            String android_id = Settings.Secure.getString(getActivity().getContentResolver(), Settings.Secure.ANDROID_ID);
            Player p = new Player(null, android_id, name, email, false);

            RegisterPlayerTask task = new RegisterPlayerTask(getActivity(), p);
            task.setListener(this);
            task.execute();

            Toast.makeText(getActivity(), "You are registered", Toast.LENGTH_LONG);
            regButton.setEnabled(false);

            SharedPreferences settings = getActivity().getSharedPreferences(MainActivity.SHARED_PREFS_NAME, 0);
            SharedPreferences.Editor editor = settings.edit();
            editor.putBoolean(MainActivity.PREF_ISREGISTERED, true).commit();
            editor.putString(MainActivity.PREF_USER_NAME, name).commit();
            getFragmentManager().beginTransaction().setCustomAnimations(android.R.animator.fade_in, android.R.animator.fade_out).replace(android.R.id.content, new GameChoiceFragment()).commit();

        }
    }

    /**
     * Callback for the register task. Called when the user has been logged in
     * @param p The Player
     */
    @Override
    public void onPlayerRegistered(Player p) {

    }
}




Java Source Code List

edu.purdue.voltag.MainActivity.java
edu.purdue.voltag.MyApplication.java
edu.purdue.voltag.MyCustomReceiver.java
edu.purdue.voltag.PlayerListAdapter.java
edu.purdue.voltag.Refreshable.java
edu.purdue.voltag.bitmap.BitmapCacheHost.java
edu.purdue.voltag.bitmap.CachedAsyncBitmapLoader.java
edu.purdue.voltag.bitmap.ImageRenderer.java
edu.purdue.voltag.data.Game.java
edu.purdue.voltag.data.ParseConstants.java
edu.purdue.voltag.data.Player.java
edu.purdue.voltag.data.VoltagDB.java
edu.purdue.voltag.fragments.CreateGameFragment.java
edu.purdue.voltag.fragments.EmailTextWatcher.java
edu.purdue.voltag.fragments.GameChoiceFragment.java
edu.purdue.voltag.fragments.GameLobbyFragment.java
edu.purdue.voltag.fragments.JoinGameFragment.java
edu.purdue.voltag.fragments.RegistrationFragment.java
edu.purdue.voltag.fragments.SplashFragment.java
edu.purdue.voltag.helper.ImageHelper.java
edu.purdue.voltag.helper.ShareHandler.java
edu.purdue.voltag.interfaces.OnDatabaseRefreshListener.java
edu.purdue.voltag.interfaces.OnEnterLobbyListener.java
edu.purdue.voltag.interfaces.OnGameCreatedListener.java
edu.purdue.voltag.interfaces.OnJoinedGameListener.java
edu.purdue.voltag.interfaces.OnLeaveGameListener.java
edu.purdue.voltag.interfaces.OnPlayerBitmapLoadedListener.java
edu.purdue.voltag.interfaces.OnPlayerDeletedListener.java
edu.purdue.voltag.interfaces.OnPlayerRegisteredListener.java
edu.purdue.voltag.interfaces.OnPlayerTaggedListener.java
edu.purdue.voltag.tasks.AddPlayerToGameTask.java
edu.purdue.voltag.tasks.CreateGameTask.java
edu.purdue.voltag.tasks.DeletePlayerTask.java
edu.purdue.voltag.tasks.LeaveGameTask.java
edu.purdue.voltag.tasks.LoadPlayerBitmapTask.java
edu.purdue.voltag.tasks.RefreshPlayersTask.java
edu.purdue.voltag.tasks.RegisterPlayerTask.java
edu.purdue.voltag.tasks.TagPlayerTask.java