1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-07-20 10:00:00 +00:00
seahub/frontend/src/models/activity.js
2019-03-21 14:29:09 +08:00

35 lines
1.2 KiB
JavaScript

class Acticity {
constructor(json) {
this.repo_id = json.repo_id;
this.repo_name = json.repo_name;
this.obj_type = json.obj_type;
this.commit_id = json.commit_id;
this.path = json.path;
this.name = json.name;
this.author_email = json.author_email;
this.author_name = json.author_name;
this.author_contact_email = json.author_contact_email;
this.avatar_url = json.avatar_url;
this.time = json.time;
this.op_type = json.op_type;
this.createdFilesCount = 0;
this.createdFilesList = [];
if (json.op_type === 'clean-up-trash') {
this.days = json.days;
} else if (json.op_type === 'rename' && json.obj_type === 'repo') {
this.old_repo_name = json.old_repo_name;
} else if (json.op_type === 'move' && ['dir', 'file'].includes(json.obj_type)) {
this.old_path = json.old_path;
} else if (json.op_type === 'rename' && ['dir', 'file'].includes(json.obj_type)) {
this.old_path = json.old_path;
this.old_name = json.old_name;
} else if (json.op_type === 'publish') {
this.old_path = json.old_path;
} else if (json.name.endsWith('(draft).md')) {
this.draft_id = json.draft_id;
}
}
}
export default Acticity;