package mx.ambmultimedia.brillamexico.activities; import android.content.Context; import android.content.Intent; import android.support.v4.app.NavUtils; import android.support.v7.app.ActionBarActivity; import android.os.Bundle; import android.support.v7.widget.Toolbar; import android.text.Html; import android.util.Log; import android.view.MenuItem; import android.view.View; import android.widget.TextView; import com.facebook.Session; import com.facebook.SessionState; import com.facebook.UiLifecycleHelper; import com.facebook.widget.LoginButton; import com.squareup.picasso.Picasso; import org.json.JSONException; import org.json.JSONObject; import java.util.Arrays; import de.hdodenhof.circleimageview.CircleImageView; import mx.ambmultimedia.brillamexico.R; import mx.ambmultimedia.brillamexico.utils.Config; public class Logout extends ActionBarActivity { Context ctx; Config config; private UiLifecycleHelper uiHelper; private Session.StatusCallback callback = new Session.StatusCallback() { @Override public void call(Session session, SessionState sessionState, Exception e) { onSessionChange (session, sessionState, e); } }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_logout); ctx = this; config = new Config(ctx); Toolbar toolbar = (Toolbar) findViewById(R.id.app_bar); setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); TextView deleteAcount = (TextView) findViewById(R.id.deleteAcount); deleteAcount.setText(Html.fromHtml( deleteAcount.getText().toString() )); deleteAcount.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(Logout.this, EraseAcount.class); startActivity(intent); } }); BuildProfile(); /*** * Creando Login de facebook */ uiHelper = new UiLifecycleHelper(this, callback); uiHelper.onCreate(savedInstanceState); LoginButton loginBtn = (LoginButton) findViewById(R.id.authButton); loginBtn.setPublishPermissions(Arrays.asList("email", "public_profile", "publish_actions")); } public void BuildProfile () { String fbID = config.get("fbID", "0"); String _user = config.get("user", "null"); final TextView DrawerUserName = (TextView) findViewById(R.id.l_userName); try { JSONObject user = new JSONObject(_user); DrawerUserName.setText(user.getString("name")); } catch (JSONException e) { } CircleImageView ImgDrawerAvatar = (CircleImageView) findViewById(R.id.l_usersAvatar); String _avatarUrl = getString(R.string.fb_avatar_link); String miniAvatarUrl = _avatarUrl.replaceAll("__fbid__", fbID); Picasso.with(ctx) .load(miniAvatarUrl) .placeholder(R.drawable.com_facebook_profile_picture_blank_square) .into(ImgDrawerAvatar); } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { // Respond to the action bar's Up/Home button case android.R.id.home: NavUtils.navigateUpFromSameTask(this); return true; } return super.onOptionsItemSelected(item); } @Override protected void onResume() { super.onResume(); Session session = Session.getActiveSession(); if (session != null && (session.isClosed() || session.isOpened())) { onSessionChange(session, session.getState(), null); } uiHelper.onResume(); } @Override protected void onPause() { super.onPause(); uiHelper.onPause(); } @Override protected void onDestroy() { super.onDestroy(); uiHelper.onDestroy(); } @Override protected void onSaveInstanceState(Bundle bundle) { super.onSaveInstanceState(bundle); uiHelper.onSaveInstanceState(bundle); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); uiHelper.onActivityResult(requestCode, resultCode, data); } // Facebook Methods public void onSessionChange (Session session, SessionState sessionState, Exception e) { if (session != null && session.isOpened()) { // Está logueado } else { config.clear(); Intent intent = new Intent(Logout.this, LoginStep1.class); startActivity(intent); } } }