/**
* galaxy inc.
* meetup client for android
*/
package com.galaxy.meetup.client.android.content;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import android.text.TextUtils;
import com.galaxy.meetup.server.client.domain.AttributeProto;
import com.galaxy.meetup.server.client.domain.FeaturedActivityProto;
import com.galaxy.meetup.server.client.domain.GoogleReviewProto;
import com.galaxy.meetup.server.client.domain.GoogleReviewsProto;
import com.galaxy.meetup.server.client.domain.OpeningHoursProto;
import com.galaxy.meetup.server.client.domain.OpeningHoursProtoDay;
import com.galaxy.meetup.server.client.domain.OpeningHoursProtoDayInterval;
import com.galaxy.meetup.server.client.domain.PlaceActivityStreamEntryProto;
import com.galaxy.meetup.server.client.domain.PlacePageAddressProto;
import com.galaxy.meetup.server.client.domain.SimpleProfile;
/**
*
* @author sihai
*
*/
public abstract class EsLocalPageData {
private static String buildOpeningHoursStringForADay(OpeningHoursProtoDay openinghoursprotoday)
{
List list = openinghoursprotoday.interval;
if(list == null) {
return null;
}
if(openinghoursprotoday.interval.isEmpty()) {
return null;
}
String s = null;
StringBuilder stringbuilder = new StringBuilder();
boolean flag1 = true;
Iterator iterator = openinghoursprotoday.interval.iterator();
do
{
if(!iterator.hasNext())
break;
OpeningHoursProtoDayInterval openinghoursprotodayinterval = (OpeningHoursProtoDayInterval)iterator.next();
if(!TextUtils.isEmpty(openinghoursprotodayinterval.value))
{
if(!flag1)
stringbuilder.append(" ");
stringbuilder.append(openinghoursprotodayinterval.value);
flag1 = false;
}
} while(true);
int i = stringbuilder.length();
if(i != 0)
{
if(!TextUtils.isEmpty(openinghoursprotoday.dayName))
stringbuilder.insert(0, (new StringBuilder()).append(openinghoursprotoday.dayName).append(" ").toString());
s = stringbuilder.toString();
}
return s;
}
public static String getCid(SimpleProfile simpleprofile)
{
String s;
if(simpleprofile.page.localInfo.paper.placeInfo == null)
s = null;
else
s = simpleprofile.page.localInfo.paper.placeInfo.clusterId;
return s;
}
private static FeaturedActivityProto getCircleActivityStory(SimpleProfile simpleprofile)
{
return simpleprofile.page.localInfo.paper.circleActivity;
}
public static List getCircleReviews(SimpleProfile simpleprofile)
{
ArrayList arraylist = new ArrayList();
FeaturedActivityProto featuredactivityproto = getCircleActivityStory(simpleprofile);
if(hasCircleActivity(simpleprofile))
{
Iterator iterator = featuredactivityproto.activity.iterator();
do
{
if(!iterator.hasNext())
break;
PlaceActivityStreamEntryProto placeactivitystreamentryproto = (PlaceActivityStreamEntryProto)iterator.next();
if(placeactivitystreamentryproto.review != null)
arraylist.add(placeactivitystreamentryproto.review);
} while(true);
}
return arraylist;
}
public static String getFullAddress(SimpleProfile simpleprofile)
{
PlacePageAddressProto placepageaddressproto = simpleprofile.page.localInfo.paper.address;
if(null == placepageaddressproto) {
return null;
}
String s = null;
List list = simpleprofile.page.localInfo.paper.address.addressLine;
if(list != null)
{
int i = list.size();
s = null;
if(i != 0)
{
StringBuffer stringbuffer = new StringBuffer();
stringbuffer.append((String)list.get(0));
if(list.size() > 1)
stringbuffer.append("\n").append((String)list.get(1));
s = stringbuffer.toString();
}
}
return s;
}
public static String getOpeningHoursFull(SimpleProfile simpleprofile)
{
OpeningHoursProto openinghoursproto = simpleprofile.page.localInfo.paper.openingHours;
String s = null;
if(openinghoursproto == null) {
return null;
}
List list = openinghoursproto.day;
if(list == null) {
return null;
}
if(openinghoursproto.day.isEmpty()) {
return null;
}
StringBuilder stringbuilder = new StringBuilder();
boolean flag1 = true;
Iterator iterator = openinghoursproto.day.iterator();
do
{
if(!iterator.hasNext())
break;
String s1 = buildOpeningHoursStringForADay((OpeningHoursProtoDay)iterator.next());
if(s1 != null)
{
if(!flag1)
stringbuilder.append("\n");
stringbuilder.append(s1);
flag1 = false;
}
} while(true);
int i = stringbuilder.length();
s = null;
if(i != 0)
s = stringbuilder.toString();
return s;
}
public static String getOpeningHoursSummary(SimpleProfile simpleprofile)
{
OpeningHoursProto openinghoursproto = simpleprofile.page.localInfo.paper.openingHours;
String s;
if(openinghoursproto == null || openinghoursproto.today == null)
s = null;
else
s = buildOpeningHoursStringForADay(openinghoursproto.today);
return s;
}
public static String getPriceLabel(SimpleProfile simpleprofile)
{
AttributeProto attributeproto = getPriceStory(simpleprofile);
String s;
if(attributeproto != null)
s = attributeproto.labelDisplay;
else
s = null;
return s;
}
private static AttributeProto getPriceStory(SimpleProfile simpleprofile)
{
AttributeProto attributeproto;
if(simpleprofile.page.localInfo.paper.priceContinuous != null)
attributeproto = simpleprofile.page.localInfo.paper.priceContinuous;
else
attributeproto = simpleprofile.page.localInfo.paper.price;
return attributeproto;
}
public static String getPriceValue(SimpleProfile simpleprofile)
{
AttributeProto attributeproto = getPriceStory(simpleprofile);
String s;
if(attributeproto != null)
s = attributeproto.value.priceLevel;
else
s = null;
return s;
}
public static List getReviews(SimpleProfile simpleprofile)
{
ArrayList arraylist = new ArrayList();
GoogleReviewsProto googlereviewsproto = simpleprofile.page.localInfo.paper.googleReviews;
boolean flag;
if(googlereviewsproto != null && googlereviewsproto.review != null && googlereviewsproto.review.size() > 0)
flag = true;
else
flag = false;
if(flag)
{
for(Iterator iterator = googlereviewsproto.review.iterator(); iterator.hasNext(); arraylist.add((GoogleReviewProto)iterator.next()));
}
return arraylist;
}
public static FeaturedActivityProto getUserActivityStory(SimpleProfile simpleprofile)
{
return simpleprofile.page.localInfo.paper.userActivity;
}
public static GoogleReviewProto getYourReview(SimpleProfile simpleprofile) {
FeaturedActivityProto featuredactivityproto = getUserActivityStory(simpleprofile);
if(!hasYourActivity(simpleprofile)) {
return null;
}
Iterator iterator = featuredactivityproto.activity.iterator();
while(iterator.hasNext()) {
PlaceActivityStreamEntryProto placeactivitystreamentryproto = (PlaceActivityStreamEntryProto)iterator.next();
if(null != placeactivitystreamentryproto.review) {
return placeactivitystreamentryproto.review;
}
}
return null;
}
public static List getZagatAspects(GoogleReviewProto googlereviewproto)
{
List list;
if(googlereviewproto == null || googlereviewproto.zagatAspectRatings == null)
list = null;
else
list = googlereviewproto.zagatAspectRatings.aspectRating;
return list;
}
private static boolean hasActivity(FeaturedActivityProto featuredactivityproto)
{
boolean flag;
if(featuredactivityproto != null && featuredactivityproto.totalReviews != null && featuredactivityproto.totalReviews.intValue() > 0 && featuredactivityproto.activity != null)
flag = true;
else
flag = false;
return flag;
}
public static boolean hasCircleActivity(SimpleProfile simpleprofile)
{
return hasActivity(getCircleActivityStory(simpleprofile));
}
public static boolean hasYourActivity(SimpleProfile simpleprofile)
{
return hasActivity(getUserActivityStory(simpleprofile));
}
}