package org.ntlab.acanthus_client.entities;

import java.util.ArrayList;

import static java.time.LocalDateTime.now;

//-----------------------------------------------------------------
// 作品
public class Animation {
    private int aid;
    private String name;
    private String description;
//    private Boolean isPublic;
    private String createdDate = new String();
    private String lastUpdate = new String();
    private Integer likes;
    private Integer views;
    private ArrayList<String> hashTag = new ArrayList<>();
    private ArrayList<Page> pages = new ArrayList<>();
//    private Account owner;
//    private ArrayList<Editor> editors = new ArrayList<>();
//    private ArrayList<Account> invites = new ArrayList<>();
//    private ArrayList<Page> pages = new ArrayList<>();
//    private boolean isDummy;

    //-----------------------------------------------------------------
    public Animation() {
    }

    public Animation(Integer aid, String name, Account owner) {
        this.aid = aid;
        this.name = name;
//        this.owner = owner;
    }

    //-----------------------------------------------------------------
    // getter
    public Integer getAid() {
        return this.aid;
    }

    public Integer getLikes() {
        return this.likes;
    }

    public Integer getViews() {
        return this.views;
    }

    public String getName() {
        return this.name;
    }

    public String getDescription() {
        return this.description;
    }

//    public Account getOwner() {
//        return this.owner;
//    }

//    public Boolean getPublic() {
//        return this.isPublic;
//    }

    public String getCreatedDate() { return this.createdDate; }

    public String getLastUpdate() {
        return this.lastUpdate;
    }

    public ArrayList<String> getHashTag() {
        return this.hashTag;
    }

//    public ArrayList<Account> getInvites() {
//        return this.invites;
//    }
//
//    public ArrayList<Editor> getEditors() {
//        return this.editors;
//    }

//    public HashMap<Integer, Page> getPageMap() {
//        return this.pageMap;
//    }

    public ArrayList<Page> getPages() {
        return (this.pages);
    }

    //-----------------------------------------------------------------
    // setter
    public void setAid(Integer aid) {
        this.aid = aid;
    }

    public void setLikes(Integer likes) {
        this.likes = likes;
    }

    public void setViews(Integer views) {
        this.views = views;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void setDescription(String description) {
        this.description = description;
    }

//    public void setPublic(Boolean aPublic) {
//        this.isPublic = aPublic;
//    }

    //-----------------------------------------------------------------
    //-----------------------------------------------------------------
    // 招待するアカウントの追加
//    public void addInviteAccount(Account account){
//        this.invites.add(account);
//    }
//    //-----------------------------------------------------------------
//    // 編集者の追加
//    public void addEditor(Editor editor){
//        this.editors.add(editor);
//    }
//    //-----------------------------------------------------------------
    // 新規ページの追加
    public void addPage(Integer page){

    }

}
