I searched, don’t think this has been asked before.
I have a db with user generated content. Due to my error… some of the content wasn’t saved, but fields were created with some content.
I’d like to query the content db for the blank cells to find the owner ID (working), then run a backend query of the Members/PrivateMembersData db to get each creators email/user ID and send a triggered email (not working).
My code is as follows:
import wixUsers from 'wix-users';
import wixData from 'wix-data';
import { userQuery } from 'backend/applicationCalc';
import { emailUser } from 'backend/applicationCalc';
$w.onReady(function () {
console.log("running Online Registration query")
wixData.query("OnlineCPDAttendees")
.eq("title", null)
.limit(200)
.find()
.then((results) => {
let totalCount = results.totalCount;
console.log("Query has been run, total count = " + totalCount)
if (results.items.length > 0) {
console.log("as query is greater than zero, running backend user query")
let owner = results._owner;
let date = results._createdDate
let items = results.items;
userQuery(owner);
} else {
console.log("ZERO RESULTS IN QUERY")
}
})
.catch((error) => {
let errorMsg = error.message;
let code = error.code;
console.log("ERROR IN QUERY = " + errorMsg + "ERROR CODE = " + code)
console.log(code)
console.log(errorMsg)
});
});
The backend code is as follows:
import wixUsers from 'wix-users';
import wixData from 'wix-data';
export function userQuery(owner) {
return wixData.query("Members/PrivateMembersData")
.contains("_id", owner)
.find()
.then((userResults) => {
if (userResults.items.length > 0) {
let firstName = userResults.firstName;
let email = userResults.loginEmail;
let userId = userResults._id;
return console.log("query run with the following results: " + firstName, email, userId);
} else {
return console.log("ZERO RESULTS IN USER DB QUERY")
}
})
.catch((error) => {
let errorMsg = error.message;
let code = error.code;
return console.log("ERROR IN USER QUERY = " + errorMsg + "USER ERROR CODE = " + code)
})
}
export function emailUser(userId, firstName) {
wixUsers.emailUser('SO7WKf0', userId, {
variables: {
name: firstName
}
})
.then(() => {
return console.log("emails sent");
})
.catch((err) => {
return console.log("EMAIL ERROR - NOT SENT, error = " + err);
});
}
It’s failing with the Members/PrivateMembersData query, and I’m not quite sure if I’ve reached the limits of my abilities. @Yisrael (Wix) , any idea?