You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
981 B
48 lines
981 B
5 years ago
|
const AV = require('../lib/av-live-query-weapp-min');
|
||
|
const Presence = require("./presence")
|
||
|
|
||
|
class Class extends AV.Object{
|
||
|
get name(){
|
||
|
return this.get("name");
|
||
|
}
|
||
|
set name(value){
|
||
|
this.set("name", value);
|
||
|
}
|
||
|
get students(){
|
||
|
|
||
|
}
|
||
|
add_student(user){
|
||
|
|
||
|
}
|
||
|
del_student(user){
|
||
|
let students = this.get("students");
|
||
|
if(user.id in students){
|
||
|
this.remove(user.id);
|
||
|
}
|
||
|
}
|
||
|
enter() {
|
||
|
this.leave();
|
||
|
console.log("class.enter");
|
||
|
console.log(AV.User.current());
|
||
|
this._presence = new Presence({
|
||
|
user: AV.User.current(),
|
||
|
class: this
|
||
|
});
|
||
|
this._presence.save();
|
||
|
}
|
||
|
leave() {
|
||
|
if (this._presence != null) {
|
||
|
this._presence.destroy();
|
||
|
}
|
||
|
}
|
||
|
present_students() {
|
||
|
var query = new AV.Query("Presence");
|
||
|
//query.equalTo("class", this._class.id);
|
||
|
let students = query.find();
|
||
|
console.log(students);
|
||
|
return students;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
AV.Object.register(Class, "Class_");
|
||
|
module.exports = Class;
|