Advertisement
Guest User

Untitled

a guest
Sep 19th, 2019
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.02 KB | None | 0 0
  1. exports.example = (req, res) => {
  2. if (!req.query.key || !mongoose.Types.ObjectId.isValid(req.params.id)) return res.status(404).send();
  3.  
  4. db.UsersModel.findOne({
  5. apiKey: req.query.key
  6. }).exec().then((user, err) => {
  7. if (err || user === null) return res.status(404).send();
  8.  
  9. return db.FormsModel.findOne({
  10. owner: user._id,
  11. _id: req.params.id
  12. }).lean().select('fields name').exec();
  13. }).then((form, err) => {
  14. if (err || form === null) return res.status(400).send();
  15.  
  16. let fields = {};
  17. let fieldName = null;
  18. let regexp, count;
  19.  
  20. for (let field of form.fields) {
  21. fieldName = field.label || field.placeholder || field._id;
  22.  
  23. regexp = new RegExp(`(${fieldName})_?`, 'g');
  24. count = (Object.keys(fields).join(',').match(regexp) || []).length;
  25.  
  26. if (count > 0) {
  27. fieldName = `${fieldName}_${count + 1}`;
  28. }
  29.  
  30. fields[fieldName] = fieldName;
  31. }
  32.  
  33. res.status(200).send([{
  34. formId: 'formId',
  35. formName: 'formName',
  36. fields
  37. }]).end();
  38. });
  39. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement