12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- // Define a collection to hold our tasks.
- Tasks = new Mongo.Collection('tasks');
- if (Meteor.isClient) {
- // This code is executed on the client only.
- Accounts.ui.config({
- passwordSignupFields: "USERNAME_ONLY"
- });
- Meteor.subscribe("tasks");
- Meteor.startup(function () {
- // Use this branch to render the component after the page is ready.
- ReactDOM.render(<App />, document.getElementById('render-target'));
- });
- }
- if (Meteor.isServer) {
- Meteor.publish("tasks", function () {
- return Tasks.find();
- });
- }
- Meteor.methods({
- addTask(text) {
- // Make sure user is logged before inserting a task.
- if (!Meteor.userId()) {
- throw new Meteor.error("not-authorized");
- }
- Tasks.insert({
- text: text,
- createdAt: new Date(),
- owner: Meteor.userId(),
- username: Meteor.user().username
- });
- },
- removeTask(taskId) {
- // Without checking user ?
- Meteor._debug("removing", taskId);
- Tasks.remove(taskId);
- },
- setChecked(taskId, setChecked) {
- // Without checking user ?
- Meteor._debug("setCheck", taskId, setChecked);
- Tasks.update(taskId, { $set: { checked: setChecked }});
- },
- setPrivate(taskId, setToPrivate) {
- const task = Tasks.findOne(taskId);
- // Make sure only the task owneer can make a task private.
- if (task.owner !== Meteor.userId()) {
- throw new Meteor.Error("not-authorized");
- }
- Tasks.update(taskId, { $set: { private: setToPrivate }});
- }
- });
|