/**
* galaxy inc.
* meetup client for android
*/
package com.galaxy.meetup.client.android.ui.fragments;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.os.Bundle;
import android.support.v4.app.DialogFragment;
import android.support.v4.app.FragmentActivity;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import com.galaxy.meetup.client.android.R;
import com.galaxy.meetup.client.android.analytics.EsAnalytics;
import com.galaxy.meetup.client.android.analytics.OzActions;
import com.galaxy.meetup.client.android.analytics.OzViews;
import com.galaxy.meetup.client.android.content.EsAccount;
import com.galaxy.meetup.client.android.content.EsAccountsData;
import com.galaxy.meetup.client.android.realtimechat.RealTimeChatService;
/**
*
* @author sihai
*
*/
public class ConversationRenameDialog extends DialogFragment implements
OnClickListener, TextWatcher {
public ConversationRenameDialog()
{
}
public ConversationRenameDialog(String s, long l)
{
Bundle bundle = new Bundle();
bundle.putString("name", s);
bundle.putLong("row_id", l);
setArguments(bundle);
}
public void afterTextChanged(Editable editable)
{
}
public void beforeTextChanged(CharSequence charsequence, int i, int j, int k)
{
}
public void onClick(DialogInterface dialoginterface, int i)
{
if(-1 == i) {
FragmentActivity fragmentactivity = getActivity();
EsAccount esaccount = EsAccountsData.getActiveAccount(fragmentactivity);
if(esaccount != null)
{
OzViews ozviews = OzViews.getViewForLogging(fragmentactivity);
EsAnalytics.recordActionEvent(fragmentactivity, esaccount, OzActions.GROUP_CONVERSATION_RENAME, ozviews);
Dialog dialog = getDialog();
if(dialog != null)
{
String s = ((EditText)dialog.findViewById(R.id.conversation_rename_input)).getText().toString();
RealTimeChatService.setConversationName(fragmentactivity, esaccount, getArguments().getLong("row_id"), s);
}
}
}
dialoginterface.dismiss();
}
public final Dialog onCreateDialog(Bundle bundle)
{
FragmentActivity fragmentactivity = getActivity();
android.app.AlertDialog.Builder builder = new android.app.AlertDialog.Builder(fragmentactivity);
View view = fragmentactivity.getLayoutInflater().inflate(R.layout.conversation_rename, null);
EditText edittext = (EditText)view.findViewById(R.id.conversation_rename_input);
edittext.setText(getArguments().getString("name"));
builder.setTitle(R.string.realtimechat_conversation_rename_dialog_title).setCancelable(false).setView(view).setPositiveButton(getString(R.string.realtimechat_conversation_rename_save_button_text), this).setNegativeButton(getString(R.string.realtimechat_conversation_rename_cancel_button_text), this);
AlertDialog alertdialog = builder.create();
edittext.addTextChangedListener(this);
alertdialog.getWindow().setSoftInputMode(5);
return alertdialog;
}
public void onTextChanged(CharSequence charsequence, int i, int j, int k)
{
AlertDialog alertdialog = (AlertDialog)getDialog();
if(alertdialog != null)
{
Button button = alertdialog.getButton(-1);
boolean flag;
if(charsequence.toString().trim().length() > 0)
flag = true;
else
flag = false;
button.setEnabled(flag);
}
}
}