diff --git a/imports/api/asset-assignment-history.js b/imports/api/asset-assignment-history.js index 4ea20d3..3a7af45 100644 --- a/imports/api/asset-assignment-history.js +++ b/imports/api/asset-assignment-history.js @@ -119,14 +119,14 @@ if (Meteor.isServer) { } if(next.asset) { - next.assetType = AssetTypes.findOne({_id: next.asset.assetType}) + next.assetType = AssetTypes.findOne({_id: next.asset.assetTypeId}) } if(next.assigneeId) { next.assignee = next.asset.assigneeType === "Student" ? Students.findOne({_id: next.assigneeId}) : Staff.findOne({_id: next.assigneeId}) } } - + return result; } else return null; } diff --git a/imports/api/data-collection.js b/imports/api/data-collection.js index 34265ea..04031ce 100644 --- a/imports/api/data-collection.js +++ b/imports/api/data-collection.js @@ -118,7 +118,7 @@ if (Meteor.isServer) { } if (next.asset) { - next.assetType = AssetTypes.findOne({_id: next.asset.assetType}) + next.assetType = AssetTypes.findOne({_id: next.asset.assetTypeId}) if (next.asset.assigneeId) { next.assignedTo = next.asset.assigneeType === "Student" ? Students.findOne({_id: next.asset.assigneeId}) : Staff.findOne({_id: next.asset.assigneeId}) diff --git a/imports/ui/pages/Assignments/ByAsset.jsx b/imports/ui/pages/Assignments/ByAsset.jsx index 1b629e5..3e19695 100644 --- a/imports/ui/pages/Assignments/ByAsset.jsx +++ b/imports/ui/pages/Assignments/ByAsset.jsx @@ -65,9 +65,10 @@ const AssignmentsByAsset = () => { return {foundAsset} }); - useEffect(() => { - if(assetIdInput) assetIdInput.focus() - }) + //This works too well. The field always gets focus anytime anything is typed anywhere. + // useEffect(() => { + // if(assetIdInput) assetIdInput.focus() + // }) const unassign = () => { // Open the dialog to get condition and comment. @@ -81,7 +82,10 @@ const AssignmentsByAsset = () => { if(unassign === true) { // Call assets.unassign(assetId, comment, condition, conditionDetails, date) - Meteor.call('assets.unassign', foundAsset.assetId, unassignComment, unassignCondition, unassignConditionDetails) + Meteor.call('assets.unassign', foundAsset.assetId, unassignComment, unassignCondition, unassignConditionDetails, (err, result) => { + if(err) console.error(err) + else if(assetIdInput) assetIdInput.focus() + }) } } diff --git a/imports/ui/pages/Assignments/ByPerson.jsx b/imports/ui/pages/Assignments/ByPerson.jsx index d1a920c..6cefba6 100644 --- a/imports/ui/pages/Assignments/ByPerson.jsx +++ b/imports/ui/pages/Assignments/ByPerson.jsx @@ -124,19 +124,23 @@ const AssignmentsByPerson = () => { if(assign === true) { // Call assets.assign - Meteor.call('assets.assign', foundAsset.assetId, selectedPerson.type, selectedPerson._id, assignCondition, assignConditionDetails) - setAssetId("") - // Set the focus back to the asset id text field - // document.getElementById('assetIdInput').focus() - // useEffect(() => { - // if(assetIdInput) assetIdInput.focus() - // }) + Meteor.call('assets.assign', foundAsset.assetId, selectedPerson.type, selectedPerson._id, assignCondition, assignConditionDetails, (err, result) => { + if(err) console.error(err) + else { + // Clear the asset id field and set focus to it. + setAssetId("") + if(assetIdInput) assetIdInput.focus() + } + }) + + //document.getElementById('assetIdInput').focus() } } - useEffect(() => { - if(assetIdInput) assetIdInput.focus() - }) + //This works too well. The field always gets focus anytime anything is typed anywhere. + // useEffect(() => { + // if(assetIdInput) assetIdInput.focus() + // }) const unassign = (asset) => { // Open the dialog to get condition and comment. @@ -151,7 +155,10 @@ const AssignmentsByPerson = () => { if(unassign === true) { // Call assets.unassign(assetId, comment, condition, conditionDetails, date) - Meteor.call('assets.unassign', unassignAsset.assetId, unassignComment, unassignCondition, unassignConditionDetails) + Meteor.call('assets.unassign', unassignAsset.assetId, unassignComment, unassignCondition, unassignConditionDetails, (err, result) => { + if(err) console.error(err) + else if(assetIdInput) assetIdInput.focus() + }) } } @@ -226,7 +233,7 @@ const AssignmentsByPerson = () => {