use of com.chrishoekstra.trello.vo.CardVO in project Trello-Android by chrisHoekstra.
the class CardAdapter method getView.
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
convertView = mInflater.inflate(R.layout.card_row, null);
holder = new ViewHolder();
holder.nameText = (TextView) convertView.findViewById(R.id.name);
holder.labels = new HashMap<String, View>();
holder.labels.put(LabelVO.GREEN, convertView.findViewById(R.id.green_label));
holder.labels.put(LabelVO.YELLOW, convertView.findViewById(R.id.yellow_label));
holder.labels.put(LabelVO.ORANGE, convertView.findViewById(R.id.orange_label));
holder.labels.put(LabelVO.RED, convertView.findViewById(R.id.red_label));
holder.labels.put(LabelVO.PURPLE, convertView.findViewById(R.id.purple_label));
holder.labels.put(LabelVO.BLUE, convertView.findViewById(R.id.blue_label));
holder.descriptionBadge = (LinearLayout) convertView.findViewById(R.id.descriptionBadgeLayout);
holder.commentBadge = (LinearLayout) convertView.findViewById(R.id.commentBadgeLayout);
holder.commentBadgeCount = (TextView) convertView.findViewById(R.id.commentBadgeCount);
holder.attachmentBadge = (LinearLayout) convertView.findViewById(R.id.attachmentBadgeLayout);
holder.attachmentBadgeCount = (TextView) convertView.findViewById(R.id.attachmentBadgeCount);
holder.checkItemBadge = (LinearLayout) convertView.findViewById(R.id.checkItemBadgeLayout);
holder.checkItemBadgeCount = (TextView) convertView.findViewById(R.id.checkItemBadgeCount);
holder.voteBadge = (RelativeLayout) convertView.findViewById(R.id.voteBadgeLayout);
holder.voteBadgeCount = (TextView) convertView.findViewById(R.id.voteBadgeCount);
holder.dueDateBadge = (LinearLayout) convertView.findViewById(R.id.dueDateBadgeLayout);
holder.dueDateBadgeTime = (TextView) convertView.findViewById(R.id.dueDateBadgeTime);
holder.notificationBadge = (LinearLayout) convertView.findViewById(R.id.notificationBadgeLayout);
holder.notificationBadgeCount = (TextView) convertView.findViewById(R.id.notificationBadgeCount);
holder.gravatarIcons = (LinearLayout) convertView.findViewById(R.id.gravatar_icons);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
for (Entry<String, View> labelEntry : holder.labels.entrySet()) {
labelEntry.getValue().setVisibility(View.GONE);
}
CardVO card = mCards.get(position);
if (card != null) {
holder.nameText.setText(card.name);
for (LabelVO label : card.labels) {
holder.labels.get(label.color).setVisibility(View.VISIBLE);
}
holder.descriptionBadge.setVisibility(card.badges.description ? View.VISIBLE : View.GONE);
holder.commentBadge.setVisibility(card.badges.comments > 0 ? View.VISIBLE : View.GONE);
holder.commentBadgeCount.setText(card.badges.comments + "");
holder.attachmentBadge.setVisibility(card.badges.attachments > 0 ? View.VISIBLE : View.GONE);
holder.attachmentBadgeCount.setText(card.badges.attachments + "");
holder.checkItemBadge.setVisibility(card.badges.checkItems > 0 ? View.VISIBLE : View.GONE);
holder.checkItemBadgeCount.setText(card.badges.checkItemsChecked + "/" + card.badges.checkItems);
holder.voteBadge.setVisibility(card.badges.votes > 0 ? View.VISIBLE : View.GONE);
holder.voteBadgeCount.setText(card.badges.votes + " " + (card.badges.votes > 1 ? mVotesString : mVoteString));
holder.dueDateBadge.setVisibility(((card.badges.due != null) && (!card.badges.due.equals(""))) ? View.VISIBLE : View.GONE);
try {
holder.dueDateBadgeTime.setText(((card.badges.due != null) && (!card.badges.due.equals(""))) ? mDateFomat.format(mDateTimeFormatter.parseDateTime(card.badges.due).toDate()) : "");
} catch (Exception e) {
e.printStackTrace();
Log.w("Fucked up date", card.badges.due);
holder.dueDateBadgeTime.setText("?");
}
int count = mModel.getNotificationCount(card.id);
holder.notificationBadge.setVisibility(count > 0 ? View.VISIBLE : View.GONE);
holder.notificationBadgeCount.setText(count + "");
if ((card.idMembers != null) && (card.idMembers.size() > 0)) {
holder.gravatarIcons.setVisibility(View.VISIBLE);
holder.gravatarIcons.removeAllViews();
for (String id : card.idMembers) {
GravatarView gravatar = new GravatarView(getContext());
holder.gravatarIcons.addView(gravatar);
gravatar.getLayoutParams().height = (int) mThirtyDp;
gravatar.getLayoutParams().width = (int) mThirtyDp;
gravatar.setDefaultImageType(GravatarAPI.DEFAULT_IMAGE_404);
gravatar.setAvatarURL(GravatarAPI.getAvatarURLById(mModel.getGravatarId(id)));
}
} else {
holder.gravatarIcons.setVisibility(View.GONE);
}
}
return convertView;
}
use of com.chrishoekstra.trello.vo.CardVO in project Trello-Android by chrisHoekstra.
the class CardActivity method populateView.
private void populateView() {
CardVO card = mModel.getCard(mBoardListId, mCardId);
mNameText.setText(card.name);
mDescriptionText.setText(card.desc);
}
use of com.chrishoekstra.trello.vo.CardVO in project Trello-Android by chrisHoekstra.
the class TrelloService method getCardsByBoardList.
public ArrayList<CardVO> getCardsByBoardList(String boardListId) {
ArrayList<CardVO> result = null;
ArrayList<BasicNameValuePair> params = new ArrayList<BasicNameValuePair>();
params.add(new BasicNameValuePair("key", PUBLIC_KEY));
params.add(new BasicNameValuePair("token", mToken));
params.add(new BasicNameValuePair("filter", "open"));
params.add(new BasicNameValuePair("badges", "true"));
params.add(new BasicNameValuePair("labels", "true"));
params.add(new BasicNameValuePair("members", "true"));
HttpGet httpGet = new HttpGet(TRELLO_API_URL + "lists/" + boardListId + "/cards?" + URLEncodedUtils.format(params, "UTF-8"));
HttpClient httpClient = getHttpClient();
try {
httpGet.setHeader("Accept", "application/json, text/javascript, */*; q=0.01");
httpClient.getParams().setParameter(CoreProtocolPNames.USER_AGENT, USER_AGENT_STRING);
HttpResponse response = httpClient.execute(httpGet, mContext);
if (response != null) {
result = mObjectMapper.readValue(mJsonFactory.createJsonParser(new InputStreamReader(response.getEntity().getContent(), "UTF-8")), new TypeReference<ArrayList<CardVO>>() {
});
}
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return result;
}
use of com.chrishoekstra.trello.vo.CardVO in project Trello-Android by chrisHoekstra.
the class BoardListActivity method onCreate.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.board_list);
// Instantiate view items
mCardList = (ListView) findViewById(R.id.card_list);
mBoardListText = (TextView) findViewById(R.id.board_list);
mAddCardEdit = (EditText) findViewById(R.id.add_card_edit);
mAddCardButton = (Button) findViewById(R.id.add_card);
mAddButton = (Button) findViewById(R.id.add);
mCancelButton = (Button) findViewById(R.id.cancel);
mAddCardLayout = (RelativeLayout) findViewById(R.id.add_card_layout);
// Instantiate models
mModel = TrelloModel.getInstance();
// Instantiate controllers
mController = TrelloController.getInstance();
// Create listeners
mOnCardsReceivedListener = new TrelloModel.OnCardsReceivedListener() {
@Override
public void onCardsRecivedEvent(TrelloModel model, String boardListId, ArrayList<CardVO> result) {
mCardAdapter = new CardAdapter(BoardListActivity.this, R.id.name, result, model);
mCardList.setAdapter(mCardAdapter);
}
};
mOnCardAddedListener = new TrelloModel.OnCardAddedListener() {
@Override
public void onCardAddedEvent(TrelloModel model, Boolean result) {
if (result) {
Toast.makeText(BoardListActivity.this, "Card added!", Toast.LENGTH_SHORT).show();
mController.getCardsByList(mBoardListId);
} else {
Toast.makeText(BoardListActivity.this, "Card addition failed!", Toast.LENGTH_SHORT).show();
}
endAddCard();
}
};
mCardList.setOnItemClickListener(new ListView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> listView, View view, int position, long id) {
Intent intent = new Intent(getParent(), CardActivity.class);
intent.putExtra(BundleKeys.CARD_ID, mCardAdapter.getItem(position).id);
intent.putExtra(BundleKeys.BOARD_LIST_ID, mBoardListId);
((TabActivityGroup) getParent()).startChildActivity("CardActivity", intent);
}
});
mAddCardButton.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
beginAddCard();
}
});
mCancelButton.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
endAddCard();
}
});
mAddButton.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
mController.addCard(mBoardListId, mAddCardEdit.getText().toString());
}
});
// Add listeners
mModel.addListener(mOnCardsReceivedListener);
mModel.addListener(mOnCardAddedListener);
// Get bundle extras
getBundleExtras((savedInstanceState != null) ? savedInstanceState : getIntent().getExtras());
// Instantiate activity variables
mController.getCardsByList(mBoardListId);
populateView();
}
Aggregations