/**
* galaxy inc.
* meetup client for android
*/
package com.galaxy.meetup.client.android.ui.view;
import android.content.Context;
import android.content.res.Resources;
import android.content.res.TypedArray;
import android.util.AttributeSet;
import android.view.View;
import android.widget.TextView;
import com.galaxy.meetup.client.android.R;
import com.galaxy.meetup.client.android.content.EsEventData;
import com.galaxy.meetup.client.android.ui.fragments.EventActiveState;
import com.galaxy.meetup.server.client.v2.domain.Event;
import com.galaxy.meetup.server.client.v2.domain.EventOptions;
/**
*
* @author sihai
*
*/
public class EventDetailsSecondaryLayout extends ExactLayout implements android.view.View.OnClickListener {
private static boolean sInitialized;
private static int sPadding;
private static int sSeeInviteesTextColor;
private static int sSeeInvitesHeight;
private static String sSeeInvitesText;
private static float sSeeInvitesTextSize;
private EventInviteeSummaryLayout mGuestSummary;
private boolean mHideInvitees;
private EventActionListener mListener;
private TextView mViewInvitees;
public EventDetailsSecondaryLayout(Context context)
{
super(context);
init(context, null, 0);
}
public EventDetailsSecondaryLayout(Context context, AttributeSet attributeset)
{
super(context, attributeset);
init(context, attributeset, 0);
}
public EventDetailsSecondaryLayout(Context context, AttributeSet attributeset, int i)
{
super(context, attributeset, i);
init(context, attributeset, i);
}
private void init(Context context, AttributeSet attributeset, int i)
{
if(!sInitialized)
{
Resources resources = context.getResources();
sPadding = resources.getDimensionPixelSize(R.dimen.event_card_details_secondary_padding);
sSeeInviteesTextColor = resources.getColor(R.color.event_card_details_see_invitees_color);
sSeeInvitesText = resources.getString(R.string.event_button_view_all_invitees);
sSeeInvitesTextSize = resources.getDimension(R.dimen.event_card_details_see_invitees_size);
sSeeInvitesHeight = resources.getDimensionPixelSize(R.dimen.event_card_details_see_invitees_height);
sInitialized = true;
}
mGuestSummary = new EventInviteeSummaryLayout(context, attributeset, i);
addView(mGuestSummary);
mViewInvitees = new TextView(context, attributeset, i);
addView(mViewInvitees);
mViewInvitees.setText(sSeeInvitesText);
mViewInvitees.setTextSize(0, sSeeInvitesTextSize);
mViewInvitees.setTextColor(sSeeInviteesTextColor);
mViewInvitees.setGravity(17);
mViewInvitees.setClickable(true);
mViewInvitees.setOnClickListener(this);
TypedArray typedarray = context.obtainStyledAttributes(attributeset, R.styleable.Theme);
mViewInvitees.setBackgroundDrawable(typedarray.getDrawable(5));
typedarray.recycle();
addPadding(0, 0, 0, sPadding);
}
public final void bind(Event event, EventActiveState eventactivestate, EventActionListener eventactionlistener)
{
boolean flag = true;
boolean flag1;
byte byte0;
if(System.currentTimeMillis() > EsEventData.getEventEndTime(event))
flag1 = flag;
else
flag1 = false;
EventOptions options = event.getOptions();
if(null != options || !options.isHideGuestList() || eventactivestate.isOwner)
flag = false;
mHideInvitees = flag;
if(mHideInvitees)
byte0 = 8;
else
byte0 = 0;
mViewInvitees.setVisibility(byte0);
mGuestSummary.setVisibility(byte0);
mGuestSummary.bind(event, eventactionlistener, flag1);
mListener = eventactionlistener;
invalidate();
}
public final void clear()
{
mGuestSummary.clear();
mListener = null;
}
protected void measureChildren(int i, int j)
{
int k = android.view.View.MeasureSpec.getSize(i);
if(!mHideInvitees)
{
EventInviteeSummaryLayout eventinviteesummarylayout = mGuestSummary;
int l;
int i1;
if(eventinviteesummarylayout.size() > 0)
{
int j1 = 0 + sPadding;
measure(eventinviteesummarylayout, k, 0x40000000, 0, 0);
setCorner(eventinviteesummarylayout, 0, 0);
l = j1 + eventinviteesummarylayout.getMeasuredHeight();
eventinviteesummarylayout.setVisibility(0);
} else
{
eventinviteesummarylayout.setVisibility(8);
l = 0;
}
i1 = l + 0;
measure(mViewInvitees, k, 0x40000000, sSeeInvitesHeight, 0x40000000);
setCorner(mViewInvitees, 0, i1);
mViewInvitees.getMeasuredHeight();
}
}
public void onClick(View view)
{
if(view == mViewInvitees && mListener != null)
mListener.onViewAllInviteesClicked();
}
}