package app.insti.api.model;

import com.google.gson.annotations.SerializedName;

import java.util.List;

import app.insti.interfaces.CardInterface;

public class SubActivity implements CardInterface {

    @SerializedName("id")
    private String subActivityID;

    @SerializedName("name")
    private String subActivityName;

    @SerializedName("image_url")
    private String subActivityImageURL;

    @SerializedName("shortdescription")
    private String subActivityShortDescription;

    @SerializedName("description")
    private String subActivityDescription;

    @SerializedName("parent")
    private BroadActivity subActivityParents;

    @SerializedName("children")
    private List<NewEvent> subActivityChildren;

    @SerializedName("followers_count")
    private int subActivityFollowersCount;

    @SerializedName("user_follows")
    private boolean subActivityUserFollows;

    public String getSubActivityID() {
        return subActivityID;
    }

    public String getSubActivityName() {
        return subActivityName;
    }

    public String getSubActivityImageURL() {
        return subActivityImageURL;
    }

    public List<NewEvent> getSubActivityChildren() {
        return subActivityChildren;
    }

    public BroadActivity getSubActivityParents() {
        return subActivityParents;
    }

    public String getSubActivityShortDescription() {
        return subActivityShortDescription;
    }

    public void setSubActivityID(String subActivityID) {
        this.subActivityID = subActivityID;
    }

    public void setSubActivityName(String subActivityName) {
        this.subActivityName = subActivityName;
    }

    public void setSubActivityImageURL(String subActivityImageURL) {
        this.subActivityImageURL = subActivityImageURL;
    }

    public void setSubActivityChildren(List<NewEvent> subActivityChildren) {
        this.subActivityChildren = subActivityChildren;
    }

    public void setSubActivityParents(BroadActivity subActivityParents) {
        this.subActivityParents = subActivityParents;
    }

    public String getSubActivityDescription() {
        return subActivityDescription;
    }

    public int getSubActivityFollowersCount() {
        return subActivityFollowersCount;
    }

    public boolean isSubActivityUserFollows() {
        return subActivityUserFollows;
    }

    public void setSubActivityDescription(String subActivityDescription) {
        this.subActivityDescription = subActivityDescription;
    }

    public void setSubActivityFollowersCount(int subActivityFollowersCount) {
        this.subActivityFollowersCount = subActivityFollowersCount;
    }

    public void setSubActivityUserFollows(boolean subActivityUserFollows) {
        this.subActivityUserFollows = subActivityUserFollows;
    }

    public void setSubActivityShortDescription(String subActivityShortDescription) {
        this.subActivityShortDescription = subActivityShortDescription;
    }

    @Override
    public long getId() {
        return getSubActivityID().hashCode();
    }

    @Override
    public String getTitle() {
        return getSubActivityName();
    }

    @Override
    public String getSubtitle() {
        return getSubActivityDescription() ;
    }

    @Override
    public String getAvatarUrl() {
        return getSubActivityImageURL();
    }
}
