package alm.motiv.AlmendeMotivator.models; import alm.motiv.AlmendeMotivator.adapters.Item; import android.os.Parcelable; import com.mongodb.BasicDBObject; import java.io.Serializable; import java.util.ArrayList; import java.util.Date; /** * Created by AsterLaptop on 3/31/14. */ public class Challenge extends BasicDBObject implements Item { private static final long serialVersionUID = 1L; public Challenge() {} //TODO add likeAmount to challenge. Different way then it is now. Solution below causes DBThreadExceptions public Challenge(String title, String challenger, String challengee, String content, int evidence_amount, String evidence_type, String reward, String status, String gps, String amountHours, int XPreward) { put("title", title); put("challenger", challenger); put("challengee", challengee); put("content", content); put("evidence_amount", evidence_amount); put("evidence_type", evidence_type); put("reward", reward); put("status", status); put("gps", gps); put("amountHours", amountHours); put("XPreward", XPreward); long time= System.currentTimeMillis(); this.put("Date", time); } public void updateLoginDate(){ long time= System.currentTimeMillis(); this.put("Date", time); } public void setStatus(String status) { put("status", status); } public Object getID() { return this.get("_id"); } public String getTitle() { return this.getString("title"); } public String getChallenger() { return this.getString("challenger"); } public String getChallengee() { return this.getString("challengee"); } public String getContent() { return this.getString("content"); } public int getEvidenceAmount() { return this.getInt("evidence_amount"); } public String getEvidenceType() { return this.getString("evidence_type"); } public String getReward() { return this.getString("reward"); } public String getStatus() { return this.getString("status"); } public ArrayList<BasicDBObject> getEvidence() { return (ArrayList<BasicDBObject>) this.get("evidence"); } public void setEvidence(String evidence){ this.put("evidence", evidence); } public void setComments(Message message){ this.put("$push", new BasicDBObject("comments", message)); } public ArrayList<BasicDBObject> getComments(){ return (ArrayList<BasicDBObject>) this.get("comments"); } public void setRated(String rated){ this.put("rated",rated); } public String getRated(){ return this.get("rated").toString(); } public void setRatedMessage(String ratedMessage){ this.put("ratedMessage", ratedMessage); } public String getRatedMessage(){ return this.get("ratedMessage").toString(); } public void setStartDate(Date date){ this.put("startDate", date); } public int getXPreward(){ return this.getInt("XPreward"); } @Override public boolean isSection() { return false; } public String getChallengeeName() { return this.getString("challengeeName"); } public void setChallengeeName(String challengeeName) { this.put("challengeeName",challengeeName); } public String getChallengerName() { return this.getString("challengerName"); } public void setChallengerName(String challengerName) { this.put("challengerName",challengerName); } }