formatted code
This commit is contained in:
parent
4f67ff8194
commit
513e19046c
@ -1,5 +1,9 @@
|
||||
import { Meteor } from 'meteor/meteor';
|
||||
import { Mongo } from 'meteor/mongo';
|
||||
import {
|
||||
Meteor
|
||||
} from 'meteor/meteor';
|
||||
import {
|
||||
Mongo
|
||||
} from 'meteor/mongo';
|
||||
|
||||
_uuid4 = function(cc) {
|
||||
var rr = Math.random() * 16 | 0;
|
||||
@ -14,22 +18,38 @@ Meteor.methods({
|
||||
'createSchool': function(schoolname) {
|
||||
// if superadmin, no need for approval
|
||||
if (Meteor.user() !== null &&
|
||||
schools.findOne({name:input.school}) !== null &&
|
||||
schools.findOne({status: false, creator: Meteor.userId()}) !== null) {
|
||||
schools.findOne({
|
||||
name: input.school
|
||||
}) !== null &&
|
||||
schools.findOne({
|
||||
status: false,
|
||||
creator: Meteor.userId()
|
||||
}) !== null) {
|
||||
|
||||
schools.insert({name: schoolname, status: false, creator: Meteor.userId()});
|
||||
schools.insert({
|
||||
name: schoolname,
|
||||
status: false,
|
||||
creator: Meteor.userId()
|
||||
});
|
||||
}
|
||||
},
|
||||
'deleteSchool': function(schoolid) {
|
||||
// alanning:roles implementation here
|
||||
schools.remove({_id: schoolid});
|
||||
schools.remove({
|
||||
_id: schoolid
|
||||
});
|
||||
},
|
||||
'createClass': function(input) {
|
||||
// if superadmin, no need for approval
|
||||
classes.schema.validate(input);
|
||||
if (Meteor.user() !== null &&
|
||||
classes.find({status:false, admin:Meteor.userId()}).fetch().length < 5 &&
|
||||
schools.findOne({name:input.school}) !== null) {
|
||||
classes.find({
|
||||
status: false,
|
||||
admin: Meteor.userId()
|
||||
}).fetch().length < 5 &&
|
||||
schools.findOne({
|
||||
name: input.school
|
||||
}) !== null) {
|
||||
|
||||
input.status = false;
|
||||
input.subscribers = 0;
|
||||
@ -55,10 +75,14 @@ Meteor.methods({
|
||||
}
|
||||
},
|
||||
'deleteClass': function(classid) {
|
||||
found = classes.findOne({_id: classid});
|
||||
found = classes.findOne({
|
||||
_id: classid
|
||||
});
|
||||
// Add roles
|
||||
if (Meteor.user() !== null && found !== null && found.admin === Meteor.user()._id) {
|
||||
classes.remove({_id: classid});
|
||||
classes.remove({
|
||||
_id: classid
|
||||
});
|
||||
}
|
||||
},
|
||||
'createWork': function(input) {
|
||||
@ -66,7 +90,9 @@ Meteor.methods({
|
||||
month = ref.getMonth + 1;
|
||||
ref = new Date(ref.getFullYear() + "-" + month.toString() + "-" + ref.getDate()).getTime();
|
||||
work.schema.validate(input);
|
||||
found = Meteor.findOne({_id: input.class});
|
||||
found = Meteor.findOne({
|
||||
_id: input.class
|
||||
});
|
||||
|
||||
if (Meteor.user() !== null &&
|
||||
found !== null &&
|
||||
@ -87,7 +113,9 @@ Meteor.methods({
|
||||
},
|
||||
'deleteWork': function(workid) {
|
||||
// Add security here
|
||||
work.remove({_id: workid});
|
||||
work.remove({
|
||||
_id: workid
|
||||
});
|
||||
},
|
||||
'editProfile': function(change) {
|
||||
current = Meteor.user().profile;
|
||||
@ -97,12 +125,20 @@ Meteor.methods({
|
||||
current.avatar = change.avatar;
|
||||
current.banner = change.banner;
|
||||
current.preferences = change.preferences;
|
||||
if (schools.findOne({name:current.school}) !== null &&
|
||||
if (schools.findOne({
|
||||
name: current.school
|
||||
}) !== null &&
|
||||
Number.isInteger(current.grade) &&
|
||||
current.grade >= 9 && current.grade <= 12 &&
|
||||
current.description.length <= 50) {
|
||||
|
||||
Meteor.users.update({_id: Meteor.userId()}, {$set: {profile: current}});
|
||||
Meteor.users.update({
|
||||
_id: Meteor.userId()
|
||||
}, {
|
||||
$set: {
|
||||
profile: current
|
||||
}
|
||||
});
|
||||
return 1;
|
||||
} else {
|
||||
return 0;
|
||||
@ -115,10 +151,19 @@ Meteor.methods({
|
||||
if (Meteor.user().profile.classes === undefined) {
|
||||
curr = Meteor.user().profile;
|
||||
curr.classes = [];
|
||||
Meteor.users.update({_id: Meteor.userId()}, {$set: {profile: curr}});
|
||||
Meteor.users.update({
|
||||
_id: Meteor.userId()
|
||||
}, {
|
||||
$set: {
|
||||
profile: curr
|
||||
}
|
||||
});
|
||||
}
|
||||
prof = Meteor.user().profile;
|
||||
found = classes.findOne({_id: change, status: true});
|
||||
found = classes.findOne({
|
||||
_id: change,
|
||||
status: true
|
||||
});
|
||||
if (Meteor.user() !== null &&
|
||||
found !== null &&
|
||||
pass === found.code &&
|
||||
@ -127,7 +172,13 @@ Meteor.methods({
|
||||
|
||||
current = Meteor.user().profile;
|
||||
current.classes.append(change);
|
||||
Meteor.users.update({_id: Meteor.userId()}, {$set: {profile: current}});
|
||||
Meteor.users.update({
|
||||
_id: Meteor.userId()
|
||||
}, {
|
||||
$set: {
|
||||
profile: current
|
||||
}
|
||||
});
|
||||
return 1;
|
||||
} else {
|
||||
return 0;
|
||||
@ -138,9 +189,17 @@ Meteor.methods({
|
||||
profile = Meteor.user().profile;
|
||||
index = profile.classes.indexOf(change);
|
||||
if (index >= 0) {
|
||||
if (classes.findOne({_id: change}).admin != Meteor.userId()) {
|
||||
if (classes.findOne({
|
||||
_id: change
|
||||
}).admin != Meteor.userId()) {
|
||||
profile.classes.splice(index, 1);
|
||||
Meteor.users.update({_id: Meteor.userId()}, {$set: {profile: current}});
|
||||
Meteor.users.update({
|
||||
_id: Meteor.userId()
|
||||
}, {
|
||||
$set: {
|
||||
profile: current
|
||||
}
|
||||
});
|
||||
return 1;
|
||||
} else {
|
||||
throw "You are currently the admin of this class. Transfer ownership in order to leave this class.";
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user