Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.projetofinal.sisodonto.view;
- import com.projetofinal.sisodonto.controller.LoginController;
- import android.app.ProgressDialog;
- import android.content.Intent;
- import android.os.Bundle;
- import android.app.Activity;
- import android.view.Menu;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.TextView;
- import android.widget.Toast;
- import com.projetofinal.sisodonto.view.R;
- import org.json.JSONException;
- import org.json.JSONObject;
- import com.loopj.android.http.AsyncHttpClient;
- import com.loopj.android.http.AsyncHttpResponseHandler;
- import com.loopj.android.http.RequestParams;
- import cz.msebera.android.httpclient.Header;
- public class LoginActivity extends Activity implements OnClickListener{
- private Button btEntrar;
- private LoginController controller;
- private EditText etEmail;
- private EditText etSenha;
- ProgressDialog prgDialog;
- TextView errorMsg;
- // Email Edit View Object
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_login);
- inicializarComponentes();
- inicializarController();
- }
- public void inicializarComponentes(){
- btEntrar = (Button)findViewById(R.id.btEntrar);
- btEntrar.setOnClickListener(this);
- etEmail = (EditText)findViewById(R.id.etEmail);
- etSenha = (EditText)findViewById(R.id.etSenha);
- // Find Error Msg Text View control by ID
- errorMsg = (TextView)findViewById(R.id.login_error);
- // Instantiate Progress Dialog object
- prgDialog = new ProgressDialog(this);
- // Set Progress Dialog Text
- prgDialog.setMessage("Please wait...");
- // Set Cancelable as False
- prgDialog.setCancelable(false);
- }
- public void invokeWS(View view) {
- String email = etEmail.getText().toString();
- // Get Password Edit View Value
- String password = etSenha.getText().toString();
- // Instantiate Http Request Param Object
- RequestParams params = new RequestParams();
- // When Email Edit View and Password Edit View have values other than Null
- if(Utility.isNotNull(email) && Utility.isNotNull(password)){
- // When Email entered is Valid
- if(Utility.validate(email)){
- // Put Http parameter username with value of Email Edit View control
- params.put("username", email);
- // Put Http parameter password with value of Password Edit Value control
- params.put("password", password);
- // Invoke RESTful Web Service with Http parameters
- invokeWS(params);
- }
- // When Email is invalid
- else{
- Toast.makeText(getApplicationContext(), "Please enter valid email", Toast.LENGTH_LONG).show();
- }
- }
- // When any of the Edit View control left blank
- else{
- Toast.makeText(getApplicationContext(), "Please fill the form, don't leave any field blank", Toast.LENGTH_LONG).show();
- }
- }
- public void navigatetoHomeActivity(){
- Intent homeIntent = new Intent(getApplicationContext(),MainMenuActivity.class);
- homeIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
- startActivity(homeIntent);
- }
- //public void loginUser(View view){
- //}
- public void inicializarController(){
- this.controller = new LoginController(this);
- }
- public void onClick(View v){
- }
- public void invokeWS(RequestParams params){
- // Show Progress Dialog
- prgDialog.show();
- // Make RESTful webservice call using AsyncHttpClient object
- AsyncHttpClient client = new AsyncHttpClient();
- client.get("http://192.168.43.17:9999/useraccount/login/dologin",params ,new AsyncHttpResponseHandler() {
- /** @deprecated */
- @Deprecated
- public final void onSuccess(String content) {
- // Hide Progress Dialog
- prgDialog.hide();
- try {
- // JSON Object
- JSONObject obj = new JSONObject(content);
- // When the JSON response has status boolean value assigned with true
- if(obj.getBoolean("status")){
- Toast.makeText(getApplicationContext(), "You are successfully logged in!", Toast.LENGTH_LONG).show();
- // Navigate to Home screen
- navigatetoHomeActivity();
- }
- // Else display error message
- else{
- errorMsg.setText(obj.getString("error_msg"));
- Toast.makeText(getApplicationContext(), obj.getString("error_msg"), Toast.LENGTH_LONG).show();
- }
- } catch (JSONException e) {
- // TODO Auto-generated catch block
- Toast.makeText(getApplicationContext(), "Error Occured [Server's JSON response might be invalid]!", Toast.LENGTH_LONG).show();
- e.printStackTrace();
- }
- }
- // When the response returned by REST has Http response code other than '200'
- /** @deprecated */
- @Deprecated
- public final void onFailure(int statusCode, Throwable error, String content) {
- // Hide Progress Dialog
- prgDialog.hide();
- // When Http response code is '404'
- if(statusCode == 404){
- Toast.makeText(getApplicationContext(), "Requested resource not found", Toast.LENGTH_LONG).show();
- }
- // When Http response code is '500'
- else if(statusCode == 500){
- Toast.makeText(getApplicationContext(), "Something went wrong at server end", Toast.LENGTH_LONG).show();
- }
- // When Http response code other than 404, 500
- else{
- Toast.makeText(getApplicationContext(), "Unexpected Error occcured! [Most common Error: Device might not be connected to Internet or remote server is not up and running]", Toast.LENGTH_LONG).show();
- }
- }
- }
- });
- }
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- // Inflate the menu; this adds items to the action bar if it is present.
- getMenuInflater().inflate(R.menu.login, menu);
- return true;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement