fix #76
This commit is contained in:
parent
80126c4631
commit
e23398999a
@ -1,6 +1,6 @@
|
||||
Router.route('/', {
|
||||
waitOn: function() {
|
||||
if (!Meteor.userId()) {
|
||||
if (!Meteor.userId() || !Meteor.user().profile.school) {
|
||||
this.redirect('/login');
|
||||
} else {
|
||||
return [
|
||||
@ -20,7 +20,7 @@ Router.route('/', {
|
||||
Router.route('/login', function() {
|
||||
if (!Meteor.userId()) {
|
||||
this.render("login");
|
||||
} else if (Object.keys(Meteor.user().profile).length <= 1) {
|
||||
} else if (!Meteor.user().profile.school) {
|
||||
this.redirect('/profile');
|
||||
} else {
|
||||
this.redirect('/');
|
||||
|
||||
@ -7,7 +7,6 @@ import {
|
||||
} from 'meteor/mongo';
|
||||
|
||||
// Defines who the admins are - not added
|
||||
|
||||
var superadmins = [
|
||||
"ybq987@gmail.com",
|
||||
"ksjdragon@gmail.com",
|
||||
@ -40,14 +39,14 @@ Meteor.publish('classes', function() {
|
||||
return classes.find();
|
||||
} else {
|
||||
// Return user classes and all _public_ classes.
|
||||
var userprofile = Meteor.users.findOne(this.userId).profile;
|
||||
if (userprofile !== undefined && userprofile.classes !== undefined) {
|
||||
var userprofile = Meteor.users.findOne(this.userId);
|
||||
if (userprofile !== undefined && userprofile.profile.classes !== undefined) {
|
||||
return classes.find({
|
||||
$or: [{
|
||||
privacy: false
|
||||
}, {
|
||||
_id: {
|
||||
$in: userprofile.classes
|
||||
$in: userprofile.profile.classes
|
||||
}
|
||||
}]
|
||||
}, {
|
||||
@ -67,11 +66,8 @@ Meteor.publish('classes', function() {
|
||||
}
|
||||
});
|
||||
} else {
|
||||
var empty;
|
||||
Meteor.call('createProfile', this.userId, function(error, result) {
|
||||
empty = result;
|
||||
});
|
||||
return result;
|
||||
Meteor.call('createProfile', this.userId);
|
||||
return classes.find({_id: null});
|
||||
}
|
||||
}
|
||||
});
|
||||
@ -82,20 +78,17 @@ Meteor.publish('work', function() {
|
||||
if (Roles.userIsInRole(this.userId, ['superadmin', 'admin'])) {
|
||||
return work.find();
|
||||
} else {
|
||||
var userprofile = Meteor.users.findOne(this.userId).profile;
|
||||
if (userprofile !== undefined && userprofile.classes !== undefined) {
|
||||
var userprofile = Meteor.users.findOne(this.userId);
|
||||
if (userprofile !== undefined && userprofile.profile.classes !== undefined) {
|
||||
return work.find({
|
||||
// Only return work of enrolled classes
|
||||
class: {
|
||||
$in: userprofile.classes
|
||||
$in: userprofile.profile.classes
|
||||
}
|
||||
});
|
||||
} else {
|
||||
var empty;
|
||||
Meteor.call('createProfile', this.userId, function(error, result) {
|
||||
empty = result;
|
||||
});
|
||||
return result;
|
||||
Meteor.call('createProfile', this.userId);
|
||||
return classes.find({_id: null});
|
||||
}
|
||||
|
||||
}
|
||||
@ -518,9 +511,6 @@ Meteor.methods({
|
||||
profile: current
|
||||
}
|
||||
});
|
||||
return classes.find({
|
||||
_id: null
|
||||
});
|
||||
},
|
||||
'joinClass': function(input) {
|
||||
var change = input[0];
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user