@yrpri/api 9.0.139 → 9.0.141

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (322) hide show
  1. package/agents/assistants/agentAssistant.js +4 -3
  2. package/agents/assistants/baseAssistant.js +72 -71
  3. package/agents/assistants/baseAssistantWithVoice.js +6 -5
  4. package/agents/assistants/modes/agentDirectConnection.js +8 -7
  5. package/agents/assistants/modes/agentSelectionMode.js +2 -1
  6. package/agents/assistants/modes/baseAssistantMode.js +3 -2
  7. package/agents/assistants/modes/tools/agentTools.js +11 -10
  8. package/agents/assistants/modes/tools/loginTools.js +7 -6
  9. package/agents/assistants/modes/tools/models/agents.js +6 -5
  10. package/agents/assistants/modes/tools/models/subscriptions.js +7 -6
  11. package/agents/assistants/modes/tools/navigationTools.js +7 -6
  12. package/agents/assistants/modes/tools/subscriptionTools.js +12 -11
  13. package/agents/assistants/modes/tools/workflowConverstationTools.js +7 -6
  14. package/agents/assistants/voiceAssistant.js +45 -44
  15. package/agents/controllers/agentProductController.js +8 -7
  16. package/agents/controllers/agentSubscriptionController.js +13 -12
  17. package/agents/controllers/assistantsController.js +45 -44
  18. package/agents/controllers/policySynthAgents.js +33 -32
  19. package/agents/managers/emailInvitesManager.js +4 -3
  20. package/agents/managers/newAiModelSetup.js +46 -45
  21. package/agents/managers/notificationAgentQueueManager.js +55 -54
  22. package/agents/managers/subscriptionManager.js +24 -23
  23. package/agents/models/agentProduct.js +2 -1
  24. package/agents/models/agentProductBoosterPurchase.js +2 -1
  25. package/agents/models/testData/createEvolyAgentProduct.js +7 -6
  26. package/agents/models/testData/old/updateAgentWorkflowConfiguration.js +5 -4
  27. package/agents/models/testData/updateAgentWorkflowConfiguration.js +5 -4
  28. package/agents/tools/setTemplateWorkflowCommunityId.js +6 -5
  29. package/app.d.ts +2 -1
  30. package/app.js +60 -34
  31. package/authorization.cjs +4 -4
  32. package/controllers/allOurIdeas.js +45 -44
  33. package/controllers/groups.cjs +4 -9
  34. package/controllers/images.cjs +8 -8
  35. package/controllers/index.cjs +1 -1
  36. package/controllers/points.cjs +1 -1
  37. package/controllers/posts.cjs +3 -3
  38. package/deleteUnwantedDeclerations.cjs +6 -5
  39. package/models/community.cjs +1 -1
  40. package/models/domain.cjs +7 -7
  41. package/models/image.cjs +2 -2
  42. package/models/index.cjs +8 -4
  43. package/models/post.cjs +10 -10
  44. package/models/user.cjs +1 -1
  45. package/models/video.cjs +4 -4
  46. package/package.json +5 -5
  47. package/scripts/addRatingUsersToGroup.js +1 -1
  48. package/scripts/addUserToOrganization.js +8 -8
  49. package/scripts/agents/changeModelForWorkflowGroupTemplate.js +13 -12
  50. package/scripts/agents/generateAgentWorkflowTemplateFromAgentClass.js +5 -4
  51. package/scripts/analyseRatingsForCommunity.js +2 -2
  52. package/scripts/analyzeAndFixBrokenPointUsers.js +3 -3
  53. package/scripts/analyzeEndorsementsByCountry.js +7 -7
  54. package/scripts/analyzePostsForCommunity.js +1 -1
  55. package/scripts/bulkStatusUpdates/listUpdates.js +2 -2
  56. package/scripts/bulkStatusUpdates/mergeLatestPostsToUpdate.js +5 -5
  57. package/scripts/bulkStatusUpdates/performUpdate.js +9 -9
  58. package/scripts/bulkStatusUpdates/performUpdateForGroup.cjs +12 -11
  59. package/scripts/bulkStatusUpdates/performUpdateForStatus.js +15 -15
  60. package/scripts/change/changeVideoAspectTo.js +3 -3
  61. package/scripts/change/setUseNewVersion.cjs +5 -4
  62. package/scripts/changeCommunityGroupcount.js +3 -3
  63. package/scripts/changeCommunityPostCount.js +3 -3
  64. package/scripts/changeGroupPostCount.js +3 -3
  65. package/scripts/changeLanguage.js +4 -4
  66. package/scripts/changeOfficalStatus.js +3 -3
  67. package/scripts/cleanups/deleteAnonNotifications.cjs +8 -7
  68. package/scripts/cleanups/deleteLinkGroupsWithDeletedCommunities.js +8 -8
  69. package/scripts/cleanups/deleteYearOldNotifications.cjs +6 -5
  70. package/scripts/cleanups/removeAllUsersFromHiddenPublicGroup.js +5 -5
  71. package/scripts/clearAllEndorsementInGroup.js +5 -5
  72. package/scripts/cloning/clearUsersForCommunitiesFromUrl.js +3 -3
  73. package/scripts/cloning/cloneFromUrlScript.js +4 -4
  74. package/scripts/cloning/cloneWBFromUrlScriptAndCreateLinks.js +6 -6
  75. package/scripts/cloning/cloneWBFromUrlScriptNoUsersOrPoints.js +6 -6
  76. package/scripts/cloning/cloneWBSerbianFromUrlScriptAndCreateLinks.js +6 -6
  77. package/scripts/cloning/copyCommunityConfigAndTranslationsFromURL.js +3 -3
  78. package/scripts/cloning/copyCommunityOneGroupToDomainNoUsersNoEndorsements.js +2 -2
  79. package/scripts/cloning/copyCommunityToDomainNoUsersNoEndorsements.js +2 -2
  80. package/scripts/cloning/copyCommunityToDomainWithEverything.js +2 -2
  81. package/scripts/cloning/copyCommunityToDomainWithOnlyGroups.js +3 -3
  82. package/scripts/cloning/copyGroupConfigAndTranslationsFromURL.js +3 -3
  83. package/scripts/cloning/copyPostToGroupOld.js +12 -12
  84. package/scripts/cloning/copyPostVideosFromURL.js +3 -3
  85. package/scripts/cloning/copyPostWithOutAnyVotingOrActivities.js +2 -2
  86. package/scripts/cloning/deepCloneSerbianWBFromUrlScriptAndCreateLinks.js +7 -7
  87. package/scripts/cloning/deepCloneWBFromUrlScriptAndCreateLinks.js +6 -6
  88. package/scripts/cloning/setAdminsFromURL.js +5 -5
  89. package/scripts/cloning/setExternalIdsFromURL.js +3 -3
  90. package/scripts/countCommunity.js +11 -11
  91. package/scripts/countCommunityUsers.js +4 -4
  92. package/scripts/countDelayedNotifications.js +3 -3
  93. package/scripts/countGroup.js +11 -11
  94. package/scripts/countStuff.js +3 -3
  95. package/scripts/countUniqueVotersInAGroup.js +3 -3
  96. package/scripts/createInvitesAndShow.js +2 -2
  97. package/scripts/database/sync_database.js +2 -2
  98. package/scripts/database/sync_dev_database.js +3 -3
  99. package/scripts/debugNotifications.js +5 -5
  100. package/scripts/deleteAllNewsFeeds.js +2 -2
  101. package/scripts/deleteCategory.js +1 -1
  102. package/scripts/deleteOldAppActivities.js +5 -4
  103. package/scripts/deletePostContactDataForCommunity.js +5 -4
  104. package/scripts/destroy/destroy_all_but_one_domain.js +59 -59
  105. package/scripts/displayAuthorForPost.js +1 -1
  106. package/scripts/domains/createDomain.js +5 -4
  107. package/scripts/domains/importDomainsFromXls.js +7 -6
  108. package/scripts/endorsementFraudDetection/analyseEndorsementsForCommunity.js +2 -2
  109. package/scripts/endorsementFraudDetection/bulkDeleteDuplicateEndorsmentsFromUrl.js +9 -9
  110. package/scripts/exportAllStatusChanges.js +5 -5
  111. package/scripts/exportEndorsementsForCommunity.js +5 -5
  112. package/scripts/exportPointQualitiesForCommunity.js +5 -5
  113. package/scripts/exportPostsAndPointsForCommunity.js +9 -9
  114. package/scripts/exportPostsDataSetForDomain.js +12 -12
  115. package/scripts/exportPostsForGroup.js +7 -7
  116. package/scripts/exportRatingsForPost.js +2 -2
  117. package/scripts/exportUserEndorsementsWithUserAnalysis.js +6 -6
  118. package/scripts/exportUsersForCommunity.js +3 -3
  119. package/scripts/exportUsersForDomain.js +3 -3
  120. package/scripts/exportUsersForGroup.js +3 -3
  121. package/scripts/exports/ratingDistribution.js +6 -6
  122. package/scripts/exports/whoEndorsedWhatByCommunity.js +2 -2
  123. package/scripts/findUnusedClientImports.js +2 -2
  124. package/scripts/fixAllPostPointCounts.js +1 -1
  125. package/scripts/fixAnonNotificationsSettings.js +5 -5
  126. package/scripts/fixCountKopavogur.js +1 -1
  127. package/scripts/fixEndorsementsAfterCopyPostToGroup.js +10 -10
  128. package/scripts/fixExternalUserId.js +2 -2
  129. package/scripts/fixGroupAccess.js +3 -3
  130. package/scripts/fixGroupIdeasAndPointsCount.js +2 -2
  131. package/scripts/fixNotificationSettings.js +4 -4
  132. package/scripts/fixSurveyRadioBakedInSubCodes.js +6 -6
  133. package/scripts/fixWrongUserIdForStatusUpdates.js +6 -5
  134. package/scripts/gallery/exportGalleryData.js +2 -2
  135. package/scripts/gallery/importGalleryForCommunity.js +14 -14
  136. package/scripts/gallery/readJsonAndDownloadImagesVersion2.js +6 -6
  137. package/scripts/gallery/refreshAcApiPostIdsForCommunity.js +5 -5
  138. package/scripts/genderAnalysis.js +10 -10
  139. package/scripts/genderAnalysisByStatus.js +4 -4
  140. package/scripts/importAllLocalesFromLocalFolders.js +7 -7
  141. package/scripts/importDomain.js +131 -131
  142. package/scripts/keys/addOidcToDomain.cjs +10 -9
  143. package/scripts/landUseGame/export3Ddata.js +15 -15
  144. package/scripts/listLanguagesForGroup.js +6 -6
  145. package/scripts/loadTestCreateDummyContentForGroup.js +2 -2
  146. package/scripts/makeRecursiveMapData.js +4 -4
  147. package/scripts/mapping/community_map_csv.js +5 -5
  148. package/scripts/moveCommunityToDomain.js +3 -3
  149. package/scripts/moveGroupToCommunity.js +3 -3
  150. package/scripts/movePostToGroup.js +5 -5
  151. package/scripts/movePostsToGroupsRecountGroupFromUrl.js +6 -6
  152. package/scripts/oldMovePostToGroup.js +9 -9
  153. package/scripts/processCsvForPdfUrls.js +2 -2
  154. package/scripts/processCsvForTranslationAndToxicity.js +10 -10
  155. package/scripts/recount/recount_recursive_communities.js +6 -6
  156. package/scripts/recountALLCommunityGroupCounts.js +4 -4
  157. package/scripts/recountAll.js +3 -3
  158. package/scripts/recountCommunitesFromUrl.js +3 -3
  159. package/scripts/recountCommunity.js +2 -2
  160. package/scripts/recountGroup.js +5 -5
  161. package/scripts/recountGroupNoUserChange.js +5 -5
  162. package/scripts/resetAllEndorsementsForGroup.js +3 -3
  163. package/scripts/resetEnTranslationForGroup.js +5 -5
  164. package/scripts/setAdminOnAll.cjs +15 -14
  165. package/scripts/setDomainAdmin.cjs +7 -6
  166. package/scripts/setDomainLocales.js +2 -2
  167. package/scripts/setEarlQuestionIdOnGroup.cjs +5 -4
  168. package/scripts/setLanguageOnGroupCommunitesFromUrl.js +3 -3
  169. package/scripts/setMemberOfAll.js +14 -14
  170. package/scripts/setNewUserForContentOfCommunity.js +9 -9
  171. package/scripts/setOfficialStatusOnAllPostsForCommunity.js +1 -1
  172. package/scripts/setUserOnAll.js +14 -14
  173. package/scripts/showCategoryForGroup.js +1 -1
  174. package/scripts/showOldActivityTypes.js +3 -3
  175. package/scripts/showPostsMissingCategoryForGroup.js +2 -2
  176. package/scripts/showStatuses.js +4 -4
  177. package/scripts/showUniqueVotersInCommunity.js +4 -4
  178. package/scripts/showUserAgentsAndIpsForEmails.js +4 -4
  179. package/scripts/simpleExportForGroupsForCommunity.js +5 -5
  180. package/scripts/simpleExportForPointsForCommunity.js +5 -5
  181. package/scripts/simpleExportForPostsForCommunity.js +5 -5
  182. package/scripts/testForEndorsments.js +4 -4
  183. package/scripts/undeleteGroupAndAllContent.js +8 -8
  184. package/scripts/undeletePost.js +7 -7
  185. package/scripts/unlinkSsn.js +4 -4
  186. package/scripts/updateFromAlthingi.js +8 -8
  187. package/scripts/users/createUserAddDomain.js +6 -5
  188. package/scripts/users/importUsersForDomainsFromXls.js +4 -3
  189. package/scripts/users/listDomainUsersWithSsn.js +6 -5
  190. package/scripts/users/removeUserFromDomain.js +6 -5
  191. package/scripts/users/updatePasswordFromSsn.js +5 -4
  192. package/scripts/users/updateUserSsnFromEmail.js +5 -4
  193. package/services/controllers/activities.cjs +1 -1
  194. package/services/controllers/news_feeds.cjs +1 -1
  195. package/services/controllers/notifications.cjs +1 -1
  196. package/services/controllers/recommendations.cjs +1 -1
  197. package/services/engine/allOurIdeas/aiHelper.js +10 -9
  198. package/services/engine/analytics/export_anon_community_activities.js +3 -3
  199. package/services/engine/analytics/importer.js +10 -10
  200. package/services/engine/analytics/plausible/manager.cjs +4 -4
  201. package/services/engine/analytics/statsCalc.cjs +1 -1
  202. package/services/engine/analytics/utils.cjs +11 -10
  203. package/services/engine/marketing/campaign.cjs +1 -0
  204. package/services/engine/moderation/fraud/CreateFraudAuditReport.cjs +2 -1
  205. package/services/engine/moderation/fraud/FraudBase.cjs +3 -2
  206. package/services/engine/moderation/fraud/FraudDeleteBase.cjs +5 -4
  207. package/services/engine/moderation/fraud/FraudGetBase.cjs +2 -1
  208. package/services/engine/moderation/fraud/FraudGetEndorsements.cjs +2 -1
  209. package/services/engine/moderation/fraud/FraudGetPointQualities.cjs +2 -1
  210. package/services/engine/moderation/fraud/FraudGetPoints.cjs +2 -1
  211. package/services/engine/moderation/fraud/FraudGetPosts.cjs +2 -1
  212. package/services/engine/moderation/fraud/FraudGetRatings.cjs +2 -1
  213. package/services/engine/moderation/fraud/FraudScannerNotifier.cjs +10 -9
  214. package/services/engine/moderation/get_moderation_items.cjs +1 -1
  215. package/services/engine/moderation/image_labeling/ImageLabelingBase.cjs +1 -1
  216. package/services/engine/moderation/process_moderation_items.cjs +1 -1
  217. package/services/engine/moderation/toxicity_analysis.cjs +1 -1
  218. package/services/engine/news_feeds/generate_dynamically.cjs +1 -1
  219. package/services/engine/news_feeds/generate_from_notifications.cjs +1 -1
  220. package/services/engine/notifications/emails_utils.cjs +2 -2
  221. package/services/engine/notifications/generate_point_notifications.cjs +1 -1
  222. package/services/engine/notifications/generate_post_notifications.cjs +1 -1
  223. package/services/engine/notifications/process_delayed_notifications.cjs +38 -38
  224. package/services/engine/notifications/process_general_notifications.cjs +1 -0
  225. package/services/engine/old/exporters/categories_dataset.js +11 -11
  226. package/services/engine/old/exporters/sentiment_dataset.js +12 -12
  227. package/services/engine/recommendations/events_importer.cjs +5 -5
  228. package/services/engine/recommendations/events_manager.cjs +1 -1
  229. package/services/engine/reports/add_points_to_sheet.cjs +3 -2
  230. package/services/engine/reports/commonUtils.js +3 -2
  231. package/services/engine/reports/common_utils.cjs +8 -8
  232. package/services/engine/reports/docx_group_report.cjs +1 -1
  233. package/services/engine/reports/xlsAllOurIdeasExport.js +16 -15
  234. package/services/engine/reports/xls_community_users_report.cjs +2 -2
  235. package/services/engine/reports/xls_group_report.cjs +1 -1
  236. package/services/llms/baseChatBot.js +12 -11
  237. package/services/llms/imageGeneration/chatGptImageGenerator.js +3 -2
  238. package/services/llms/imageGeneration/collectionImageGenerator.js +7 -6
  239. package/services/llms/imageGeneration/dalleImageGenerator.js +6 -5
  240. package/services/llms/imageGeneration/fluxImageGenerator.js +5 -4
  241. package/services/llms/imageGeneration/imageProcessorService.js +2 -1
  242. package/services/llms/imageGeneration/imagenImageGenerator.js +8 -7
  243. package/services/llms/imageGeneration/s3Service.js +12 -11
  244. package/services/llms/llmTranslation.js +30 -29
  245. package/services/models/ac_activity.cjs +1 -1
  246. package/services/models/ac_notification.cjs +1 -1
  247. package/services/models/ac_translation_cache.cjs +11 -11
  248. package/services/scripts/analytics/setup_all_plausible_goals.cjs +3 -2
  249. package/services/scripts/fix_old_delayed_notifications.js +3 -3
  250. package/services/scripts/kue_status.js +11 -11
  251. package/services/scripts/kue_watch_stuck_jobs.js +6 -6
  252. package/services/scripts/translation_clear_language.js +21 -21
  253. package/services/scripts/translation_delete.js +4 -4
  254. package/services/scripts/translation_replace_text_from_url.js +4 -4
  255. package/services/scripts/translation_update.js +4 -4
  256. package/services/scripts/translations_list.js +5 -5
  257. package/services/utils/airbrake.cjs +2 -1
  258. package/services/utils/redisConnection.cjs +6 -5
  259. package/services/utils/translation_helpers.cjs +3 -2
  260. package/services/utils/updateAllLocalesFromEn.js +20 -19
  261. package/services/utils/updateLocaleFolders.js +7 -6
  262. package/services/workers/activity.cjs +1 -1
  263. package/services/workers/anonymizations.cjs +1 -1
  264. package/services/workers/bulk_status_update.cjs +2 -2
  265. package/services/workers/delayed_jobs.cjs +1 -1
  266. package/services/workers/deletions.cjs +1 -1
  267. package/services/workers/email.cjs +1 -1
  268. package/services/workers/fraud_management.cjs +3 -3
  269. package/services/workers/generativeAi.js +6 -5
  270. package/services/workers/main.cjs +1 -1
  271. package/services/workers/marketing.cjs +1 -1
  272. package/services/workers/moderation.cjs +1 -1
  273. package/services/workers/notification_delivery.cjs +1 -1
  274. package/services/workers/notification_news_feed.cjs +1 -1
  275. package/services/workers/queue.cjs +2 -2
  276. package/services/workers/recount.cjs +1 -1
  277. package/services/workers/reports.cjs +1 -1
  278. package/services/workers/similarities.cjs +4 -2
  279. package/services/workers/speech_to_text.cjs +1 -1
  280. package/utils/airbrake.cjs +2 -1
  281. package/utils/cjsCodeReview.js +7 -6
  282. package/utils/community_mapping_tools.cjs +3 -2
  283. package/utils/copy_utils.cjs +32 -31
  284. package/utils/export_utils.cjs +7 -7
  285. package/utils/generateDocumentation.js +10 -9
  286. package/utils/logger.cjs +2 -23
  287. package/utils/logger.d.cts +1 -1
  288. package/utils/loggerAirbrakeTransport.cjs +52 -0
  289. package/utils/loggerAirbrakeTransport.d.cts +15 -0
  290. package/utils/loggerAirbrakeTransportTs.d.ts +15 -0
  291. package/utils/loggerAirbrakeTransportTs.js +45 -0
  292. package/utils/loggerCore.cjs +29 -0
  293. package/utils/loggerCore.d.cts +2 -0
  294. package/utils/loggerCoreTs.d.ts +2 -0
  295. package/utils/loggerCoreTs.js +23 -0
  296. package/utils/loggerTs.d.ts +1 -2
  297. package/utils/loggerTs.js +2 -25
  298. package/utils/manifest_generator.cjs +1 -0
  299. package/utils/recount_utils.cjs +6 -5
  300. package/utils/seedModels.js +50 -49
  301. package/utils/sitemap_generator.cjs +4 -4
  302. package/utils/ypLanguages.js +2 -2
  303. package/webSockets.js +8 -7
  304. package/services/utils/logger.cjs +0 -25
  305. package/services/utils/logger.d.cts +0 -2
  306. package/src/agents/assistants/assistant.d.ts +0 -156
  307. package/src/controllers/audios.d.ts +0 -5
  308. package/src/controllers/categories.d.ts +0 -5
  309. package/src/controllers/communities.d.ts +0 -5
  310. package/src/controllers/domains.d.ts +0 -5
  311. package/src/controllers/groups.d.ts +0 -5
  312. package/src/controllers/images.d.ts +0 -5
  313. package/src/controllers/points.d.ts +0 -5
  314. package/src/controllers/posts.d.ts +0 -5
  315. package/src/controllers/ratings.d.ts +0 -5
  316. package/src/controllers/users.d.ts +0 -5
  317. package/src/controllers/videos.d.ts +0 -5
  318. package/src/models/index.d.ts +0 -84
  319. package/src/services/controllers/activities.d.ts +0 -5
  320. package/src/services/controllers/notifications.d.ts +0 -5
  321. package/src/utils/copy_utils.d.ts +0 -4
  322. package/src/utils/manifest_generator.d.ts +0 -18
@@ -13,7 +13,7 @@ if (splitStatuses.length > 0) {
13
13
  statusesToUse.push(parseInt(splitStatuses[i]));
14
14
  }
15
15
  }
16
- console.log(statusesToUse);
16
+ log.info(statusesToUse);
17
17
  const otherIds = [];
18
18
  if (alsoDoIds) {
19
19
  const splitIds = alsoDoIds.split(",");
@@ -23,12 +23,12 @@ if (alsoDoIds) {
23
23
  }
24
24
  }
25
25
  }
26
- console.log(otherIds);
26
+ log.info(otherIds);
27
27
  var getTemplateContent = function (templates, title) {
28
28
  var returnContent;
29
29
  if (title) {
30
30
  _.forEach(templates, function (template) {
31
- // console.log(template);
31
+ // log.info(template);
32
32
  if (title == template.title) {
33
33
  returnContent = template.content;
34
34
  }
@@ -41,14 +41,14 @@ models.BulkStatusUpdate.findOne({
41
41
  id: id
42
42
  }
43
43
  }).then(function (update) {
44
- console.log("Update: " + update.id + " name: " + update.name);
45
- console.log(update.config);
46
- console.log(update.templates);
44
+ log.info("Update: " + update.id + " name: " + update.name);
45
+ log.info(update.config);
46
+ log.info(update.templates);
47
47
  if (update.config.groups) {
48
48
  async.eachSeries(update.config.groups, function (group, groupCallback) {
49
49
  if (group.posts) {
50
50
  async.eachSeries(group.posts, function (post, postCallback) {
51
- // console.log("New status: "+post.newOfficialStatus+" template: "+post.selectedTemplateName+ " content: "+getTemplateContent(update.templates,post.selectedTemplateName));
51
+ // log.info("New status: "+post.newOfficialStatus+" template: "+post.selectedTemplateName+ " content: "+getTemplateContent(update.templates,post.selectedTemplateName));
52
52
  if (post.newOfficialStatus) {
53
53
  var templateContent = getTemplateContent(update.templates, post.selectedTemplateName);
54
54
  if (!templateContent && post.uniqueStatusMessage) {
@@ -79,9 +79,9 @@ models.BulkStatusUpdate.findOne({
79
79
  if (postToUpdate) {
80
80
  if (statusesToUse.indexOf(postToUpdate.official_status) > -1 ||
81
81
  otherIds.indexOf(postToUpdate.id) > -1) {
82
- console.log(`Performing for ${postToUpdate.official_status}`);
82
+ log.info(`Performing for ${postToUpdate.official_status}`);
83
83
  postToUpdate.official_status = post.newOfficialStatus;
84
- console.log(post.id + ": " + templateContent);
84
+ log.info(post.id + ": " + templateContent);
85
85
  postToUpdate.save().then(function () {
86
86
  models.Point.createNewsStory({
87
87
  useragent: { source: 'performBulkUpdateScript' },
@@ -98,7 +98,7 @@ models.BulkStatusUpdate.findOne({
98
98
  });
99
99
  }
100
100
  else {
101
- console.error("Not processing post with status: " + postToUpdate.official_status);
101
+ log.error("Not processing post with status: " + postToUpdate.official_status);
102
102
  doCallback();
103
103
  }
104
104
  }
@@ -112,7 +112,7 @@ models.BulkStatusUpdate.findOne({
112
112
  });
113
113
  }
114
114
  else {
115
- console.log("WARNING: No template content for postId: " + post.id);
115
+ log.info("WARNING: No template content for postId: " + post.id);
116
116
  postCallback();
117
117
  }
118
118
  }
@@ -124,18 +124,18 @@ models.BulkStatusUpdate.findOne({
124
124
  });
125
125
  }
126
126
  else {
127
- console.log("Not performing group id: " + group.id);
127
+ log.info("Not performing group id: " + group.id);
128
128
  groupCallback();
129
129
  }
130
130
  }, function (error) {
131
131
  if (error) {
132
- console.error(error);
132
+ log.error(error);
133
133
  }
134
- console.log("Bulk status update has been applied.");
134
+ log.info("Bulk status update has been applied.");
135
135
  process.exit();
136
136
  });
137
137
  }
138
138
  }).catch(function (error) {
139
- console.error(error);
139
+ log.error(error);
140
140
  });
141
141
  export {};
@@ -19,16 +19,16 @@ models.Video.findOne({
19
19
  video.set('public_meta.aspect', "landscape");
20
20
  }
21
21
  video.save().then(() => {
22
- console.log(`Video ${videoId} set to ${aspect}`);
22
+ log.info(`Video ${videoId} set to ${aspect}`);
23
23
  process.exit();
24
24
  });
25
25
  }
26
26
  else {
27
- console.warn(`Video not found for ${videoId} ${aspect}`);
27
+ log.warn(`Video not found for ${videoId} ${aspect}`);
28
28
  process.exit();
29
29
  }
30
30
  }).catch(error => {
31
- console.error(error);
31
+ log.error(error);
32
32
  process.exit();
33
33
  });
34
34
  export {};
@@ -1,23 +1,24 @@
1
1
  "use strict";
2
2
  const models = require("../../models/index.cjs");
3
+ const log = require("../../utils/logger.cjs");
3
4
  const domainId = process.argv[2];
4
5
  const useNewVersionStatus = process.argv[3];
5
6
  models.Domain.findOne({ where: { id: domainId } }).then(async (domain) => {
6
7
  if (domain) {
7
- console.log("Domain " + domain.domain_name);
8
+ log.info("Domain " + domain.domain_name);
8
9
  if (useNewVersionStatus === "true" || useNewVersionStatus === "false") {
9
10
  domain.set("configuration.useNewVersion", useNewVersionStatus === "true" ? true : false);
10
11
  domain.changed("configuration", true);
11
12
  await domain.save();
12
- console.log("Set useNewVersionStatus to " + useNewVersionStatus);
13
+ log.info("Set useNewVersionStatus to " + useNewVersionStatus);
13
14
  }
14
15
  else {
15
- console.log("Invalid useNewVersionStatus");
16
+ log.info("Invalid useNewVersionStatus");
16
17
  }
17
18
  process.exit();
18
19
  }
19
20
  else {
20
- console.log("Can't find user");
21
+ log.info("Can't find user");
21
22
  process.exit();
22
23
  }
23
24
  });
@@ -13,18 +13,18 @@ if (communityId && groupCount) {
13
13
  if (community) {
14
14
  community.counter_groups = groupCount;
15
15
  community.save().then(() => {
16
- console.log("Done");
16
+ log.info("Done");
17
17
  process.exit();
18
18
  });
19
19
  }
20
20
  else {
21
- console.error("No community");
21
+ log.error("No community");
22
22
  process.exit();
23
23
  }
24
24
  });
25
25
  }
26
26
  else {
27
- console.error("Nothing is done!");
27
+ log.error("Nothing is done!");
28
28
  process.exit();
29
29
  }
30
30
  export {};
@@ -13,18 +13,18 @@ if (communityId && postCount) {
13
13
  if (community) {
14
14
  community.counter_posts = postCount;
15
15
  community.save().then(() => {
16
- console.log("Done");
16
+ log.info("Done");
17
17
  process.exit();
18
18
  });
19
19
  }
20
20
  else {
21
- console.error("No community");
21
+ log.error("No community");
22
22
  process.exit();
23
23
  }
24
24
  });
25
25
  }
26
26
  else {
27
- console.error("Nothing is done!");
27
+ log.error("Nothing is done!");
28
28
  process.exit();
29
29
  }
30
30
  export {};
@@ -13,18 +13,18 @@ if (groupId && postCount) {
13
13
  if (group) {
14
14
  group.counter_posts = postCount;
15
15
  group.save().then(() => {
16
- console.log("Done");
16
+ log.info("Done");
17
17
  process.exit();
18
18
  });
19
19
  }
20
20
  else {
21
- console.error("No group");
21
+ log.error("No group");
22
22
  process.exit();
23
23
  }
24
24
  });
25
25
  }
26
26
  else {
27
- console.error("Nothing is done!");
27
+ log.error("Nothing is done!");
28
28
  process.exit();
29
29
  }
30
30
  export {};
@@ -14,12 +14,12 @@ if (modelType === "post") {
14
14
  if (post) {
15
15
  post.language = language;
16
16
  post.save().then(() => {
17
- console.log("Done");
17
+ log.info("Done");
18
18
  process.exit();
19
19
  });
20
20
  }
21
21
  else {
22
- console.error("No post");
22
+ log.error("No post");
23
23
  process.exit();
24
24
  }
25
25
  });
@@ -34,12 +34,12 @@ else if (modelType === "point") {
34
34
  if (point) {
35
35
  point.language = language;
36
36
  point.save().then(() => {
37
- console.log("Done");
37
+ log.info("Done");
38
38
  process.exit();
39
39
  });
40
40
  }
41
41
  else {
42
- console.error("No point");
42
+ log.error("No point");
43
43
  process.exit();
44
44
  }
45
45
  });
@@ -13,18 +13,18 @@ if (postId && officialStatus) {
13
13
  if (post) {
14
14
  post.official_status = officialStatus;
15
15
  post.save().then(() => {
16
- console.log("Done changing status: " + officialStatus);
16
+ log.info("Done changing status: " + officialStatus);
17
17
  process.exit();
18
18
  });
19
19
  }
20
20
  else {
21
- console.error("No post");
21
+ log.error("No post");
22
22
  process.exit();
23
23
  }
24
24
  });
25
25
  }
26
26
  else {
27
- console.error("Nothing is done!");
27
+ log.error("Nothing is done!");
28
28
  process.exit();
29
29
  }
30
30
  export {};
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  const models = require('../../models/index.cjs');
3
3
  const moment = require('moment');
4
+ const log = require('../../utils/logger.cjs');
4
5
  const maxNumberFromPath = process.argv[2];
5
6
  const maxNumberOfNotificationsToDelete = maxNumberFromPath ? maxNumberFromPath : 1000;
6
7
  let numberOfDeletedNotifications = 0;
@@ -31,7 +32,7 @@ const chunk = (arr, size) => Array.from({ length: Math.ceil(arr.length / size) }
31
32
  limit: 500
32
33
  });
33
34
  if (users.length > 0) {
34
- console.log(`${users.length} users offset ${userOffset}`);
35
+ log.info(`${users.length} users offset ${userOffset}`);
35
36
  userOffset += 500;
36
37
  const userIds = users.map(n => { return n.id; });
37
38
  let haveNotificationsLeftToProcess = true;
@@ -48,7 +49,7 @@ const chunk = (arr, size) => Array.from({ length: Math.ceil(arr.length / size) }
48
49
  order: ['user_id'],
49
50
  attributes: ['id'],
50
51
  });
51
- console.log(`${notifications.length} notifications offset ${notificationsOffset}`);
52
+ log.info(`${notifications.length} notifications offset ${notificationsOffset}`);
52
53
  if (notifications.length > 0) {
53
54
  notificationsOffset += 1000;
54
55
  const notificationIds = notifications.map(n => { return n.id; });
@@ -62,7 +63,7 @@ const chunk = (arr, size) => Array.from({ length: Math.ceil(arr.length / size) }
62
63
  }
63
64
  });
64
65
  numberOfDeletedNotifications += destroyInfo;
65
- console.log(`${numberOfDeletedNotifications}`);
66
+ log.info(`${numberOfDeletedNotifications}`);
66
67
  await sleep(50);
67
68
  if (numberOfDeletedNotifications >= maxNumberOfNotificationsToDelete) {
68
69
  break;
@@ -71,7 +72,7 @@ const chunk = (arr, size) => Array.from({ length: Math.ceil(arr.length / size) }
71
72
  }
72
73
  else {
73
74
  haveNotificationsLeftToProcess = false;
74
- console.log("No more notifications left to process from user");
75
+ log.info("No more notifications left to process from user");
75
76
  }
76
77
  await sleep(100);
77
78
  }
@@ -81,11 +82,11 @@ const chunk = (arr, size) => Array.from({ length: Math.ceil(arr.length / size) }
81
82
  }
82
83
  }
83
84
  catch (error) {
84
- console.error(error);
85
+ log.error(error);
85
86
  haveNotificationsToDelete = false;
86
87
  }
87
88
  }
88
- console.log(`${numberOfDeletedNotifications} old anon notifications deleted`);
89
- console.log(`Duration ${moment(moment() - startTime).format("HH:mm:ss.SSS")}`);
89
+ log.info(`${numberOfDeletedNotifications} old anon notifications deleted`);
90
+ log.info(`Duration ${moment(moment() - startTime).format("HH:mm:ss.SSS")}`);
90
91
  process.exit();
91
92
  })();
@@ -20,7 +20,7 @@ function sleep(ms) {
20
20
  order: ['id'],
21
21
  attributes: ['id', 'configuration', 'name', 'deleted'],
22
22
  });
23
- console.log(`${groups.length} groups offset ${groupsOffset}`);
23
+ log.info(`${groups.length} groups offset ${groupsOffset}`);
24
24
  if (groups.length > 0) {
25
25
  groupsOffset += 100;
26
26
  for (let i = 0; i < groups.length; i++) {
@@ -34,7 +34,7 @@ function sleep(ms) {
34
34
  });
35
35
  if (!community) {
36
36
  const deleteText = `Deleting groupLink id ${groups[i].id} - name ${groups[i].name} - community id ${groups[i].configuration.actAsLinkToCommunityId}`;
37
- console.log(deleteText);
37
+ log.info(deleteText);
38
38
  allDeletions += `${deleteText}\n`;
39
39
  groups[i].deleted = true;
40
40
  await groups[i].save();
@@ -44,19 +44,19 @@ function sleep(ms) {
44
44
  }
45
45
  else {
46
46
  haveGroupsLeftToProcess = false;
47
- console.log("No more groups left to process from user");
47
+ log.info("No more groups left to process from user");
48
48
  }
49
49
  await sleep(100);
50
50
  }
51
51
  }
52
52
  catch (error) {
53
- console.error(error);
53
+ log.error(error);
54
54
  haveGroupsToDelete = false;
55
55
  }
56
- console.log(`${numberOfDeletedGroups} old anon groups deleted`);
57
- console.log(`Duration ${moment(moment() - startTime).format("HH:mm:ss.SSS")}`);
58
- console.log("ALL DELETIONS");
59
- console.log(allDeletions);
56
+ log.info(`${numberOfDeletedGroups} old anon groups deleted`);
57
+ log.info(`Duration ${moment(moment() - startTime).format("HH:mm:ss.SSS")}`);
58
+ log.info("ALL DELETIONS");
59
+ log.info(allDeletions);
60
60
  process.exit();
61
61
  })();
62
62
  export {};
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  const models = require('../../models/index.cjs');
3
3
  const moment = require('moment');
4
+ const log = require('../../utils/logger.cjs');
4
5
  const maxNumberFromPath = process.argv[2];
5
6
  // Default to 1,000,000 if no command line arg given, adjust as you see fit
6
7
  const maxNumberOfNotificationsToDelete = maxNumberFromPath ? parseInt(maxNumberFromPath) : 1000000;
@@ -32,7 +33,7 @@ function chunk(arr, size) {
32
33
  attributes: ['id'],
33
34
  });
34
35
  if (notifications.length > 0) {
35
- console.log(`${notifications.length} notifications found at offset ${offset}`);
36
+ log.info(`${notifications.length} notifications found at offset ${offset}`);
36
37
  offset += 1000;
37
38
  // Extract IDs and chunk them to avoid huge deletions in one query
38
39
  const notificationIds = notifications.map(n => n.id);
@@ -47,7 +48,7 @@ function chunk(arr, size) {
47
48
  },
48
49
  });
49
50
  numberOfDeletedNotifications += destroyInfo;
50
- console.log(`Total deleted so far: ${numberOfDeletedNotifications}`);
51
+ log.info(`Total deleted so far: ${numberOfDeletedNotifications}`);
51
52
  await sleep(10); // short pause
52
53
  // Stop if we’ve hit our daily (or run) limit
53
54
  if (numberOfDeletedNotifications >= maxNumberOfNotificationsToDelete) {
@@ -62,11 +63,11 @@ function chunk(arr, size) {
62
63
  await sleep(25); // short pause between big fetches
63
64
  }
64
65
  catch (error) {
65
- console.error(error);
66
+ log.error(error);
66
67
  haveNotificationsToDelete = false;
67
68
  }
68
69
  }
69
- console.log(`${numberOfDeletedNotifications} old notifications deleted`);
70
- console.log(`Duration: ${moment(moment() - startTime).format('HH:mm:ss.SSS')}`);
70
+ log.info(`${numberOfDeletedNotifications} old notifications deleted`);
71
+ log.info(`Duration: ${moment(moment() - startTime).format('HH:mm:ss.SSS')}`);
71
72
  process.exit();
72
73
  })();
@@ -18,26 +18,26 @@ models.Group.findOne({
18
18
  if (group && group.GroupUsers.length > 0) {
19
19
  async.forEachSeries(group.GroupUsers, (user, forEachSeriesCallback) => {
20
20
  group.removeGroupUser(user).then(() => {
21
- console.log(`Removed ${user.email}`);
21
+ log.info(`Removed ${user.email}`);
22
22
  forEachSeriesCallback();
23
23
  });
24
24
  }, error => {
25
25
  if (error) {
26
- console.error(error);
26
+ log.error(error);
27
27
  process.exit();
28
28
  }
29
29
  else {
30
- console.log("Finished");
30
+ log.info("Finished");
31
31
  process.exit();
32
32
  }
33
33
  });
34
34
  }
35
35
  else {
36
- console.warn(`Group not found or empty`);
36
+ log.warn(`Group not found or empty`);
37
37
  process.exit();
38
38
  }
39
39
  }).catch(error => {
40
- console.error(error);
40
+ log.error(error);
41
41
  process.exit();
42
42
  });
43
43
  export {};
@@ -22,13 +22,13 @@ models.Post.unscoped().findAll({
22
22
  async.eachSeries(post.Endorsements, (endorsement, innerCallback) => {
23
23
  endorsement.deleted = true;
24
24
  endorsement.save().then(() => {
25
- console.log(`Deleted endorsement for id ${endorsement.id}`);
25
+ log.info(`Deleted endorsement for id ${endorsement.id}`);
26
26
  innerCallback();
27
27
  }).catch(error => {
28
28
  innerCallback(error);
29
29
  });
30
30
  }, (error) => {
31
- console.log(`Cleared endorsement for post id ${post.id}`);
31
+ log.info(`Cleared endorsement for post id ${post.id}`);
32
32
  callback(error);
33
33
  });
34
34
  }).catch(error => {
@@ -36,15 +36,15 @@ models.Post.unscoped().findAll({
36
36
  });
37
37
  }, (error) => {
38
38
  if (error) {
39
- console.error(error);
39
+ log.error(error);
40
40
  }
41
41
  else {
42
- console.log("Done clearing");
42
+ log.info("Done clearing");
43
43
  }
44
44
  process.exit();
45
45
  });
46
46
  }).catch(error => {
47
- console.error(error);
47
+ log.error(error);
48
48
  process.exit();
49
49
  });
50
50
  export {};
@@ -121,9 +121,9 @@ async.series([
121
121
  },
122
122
  ], error => {
123
123
  if (error)
124
- console.error(error);
125
- console.log("All done copying config to communities");
126
- console.log(finalOutput);
124
+ log.error(error);
125
+ log.info("All done copying config to communities");
126
+ log.info(finalOutput);
127
127
  process.exit();
128
128
  });
129
129
  export {};
@@ -42,7 +42,7 @@ async.series([
42
42
  community.name = "DEMO: No Planet B - " + configLine;
43
43
  community.hostname = "demo-no-planet-b-" + configLine.toLowerCase().replace(/ /g, '-');
44
44
  community.save().then(() => {
45
- console.log(community.hostname);
45
+ log.info(community.hostname);
46
46
  finalOutput += 'https://' + community.hostname + '.yrpri.org\n';
47
47
  forEachCallback();
48
48
  }).catch(error => {
@@ -57,9 +57,9 @@ async.series([
57
57
  },
58
58
  ], error => {
59
59
  if (error)
60
- console.error(error);
61
- console.log("All done");
62
- console.log(finalOutput);
60
+ log.error(error);
61
+ log.info("All done");
62
+ log.info(finalOutput);
63
63
  process.exit();
64
64
  });
65
65
  export {};
@@ -82,7 +82,7 @@ async.series([
82
82
  content: russianName,
83
83
  translatedText: kyrgyzName
84
84
  }, (error) => {
85
- console.log(newCommunity.id);
85
+ log.info(newCommunity.id);
86
86
  finalOutput += urlToAddAddFront + "community/" + newCommunity.id + "\n";
87
87
  finalTargetOutput += urlToAddAddFront + "community/" + linkToCommunityId + "\n";
88
88
  const linkModel = models.Group.build({
@@ -130,11 +130,11 @@ async.series([
130
130
  },
131
131
  ], error => {
132
132
  if (error)
133
- console.error(error);
134
- console.log("All done clones");
135
- console.log(finalOutput);
136
- console.log("All done targets");
137
- console.log(finalTargetOutput);
133
+ log.error(error);
134
+ log.info("All done clones");
135
+ log.info(finalOutput);
136
+ log.info("All done targets");
137
+ log.info(finalTargetOutput);
138
138
  process.exit();
139
139
  });
140
140
  export {};
@@ -82,7 +82,7 @@ async.series([
82
82
  content: russianName,
83
83
  translatedText: kyrgyzName
84
84
  }, (error) => {
85
- console.log(newCommunity.id);
85
+ log.info(newCommunity.id);
86
86
  finalOutput += urlToAddAddFront + "community/" + newCommunity.id + "\n";
87
87
  finalTargetOutput += urlToAddAddFront + "community/" + linkToCommunityId + "\n";
88
88
  const linkModel = models.Group.build({
@@ -130,11 +130,11 @@ async.series([
130
130
  },
131
131
  ], error => {
132
132
  if (error)
133
- console.error(error);
134
- console.log("All done clones");
135
- console.log(finalOutput);
136
- console.log("All done targets");
137
- console.log(finalTargetOutput);
133
+ log.error(error);
134
+ log.info("All done clones");
135
+ log.info(finalOutput);
136
+ log.info("All done targets");
137
+ log.info(finalTargetOutput);
138
138
  process.exit();
139
139
  });
140
140
  export {};
@@ -74,7 +74,7 @@ async.series([
74
74
  content: serbianName,
75
75
  translatedText: englishName
76
76
  }, (error) => {
77
- console.log(newCommunity.id);
77
+ log.info(newCommunity.id);
78
78
  finalOutput += urlToAddAddFront + "community/" + newCommunity.id + "\n";
79
79
  finalTargetOutput += urlToAddAddFront + "community/" + linkToCommunityId + "\n";
80
80
  const linkModel = models.Group.build({
@@ -121,11 +121,11 @@ async.series([
121
121
  },
122
122
  ], error => {
123
123
  if (error)
124
- console.error(error);
125
- console.log("All done clones");
126
- console.log(finalOutput);
127
- console.log("All done targets");
128
- console.log(finalTargetOutput);
124
+ log.error(error);
125
+ log.info("All done clones");
126
+ log.info(finalOutput);
127
+ log.info("All done targets");
128
+ log.info(finalTargetOutput);
129
129
  process.exit();
130
130
  });
131
131
  export {};
@@ -165,9 +165,9 @@ async.series([
165
165
  },
166
166
  ], error => {
167
167
  if (error)
168
- console.error(error);
169
- console.log("All done copying config to communities");
170
- console.log(finalOutput);
168
+ log.error(error);
169
+ log.info("All done copying config to communities");
170
+ log.info(finalOutput);
171
171
  process.exit();
172
172
  });
173
173
  export {};
@@ -8,10 +8,10 @@ const groupId = process.argv[3];
8
8
  var domainId = process.argv[4];
9
9
  copyCommunityNoUsersNoEndorsementsOneGroup(communityId, groupId, domainId, (error) => {
10
10
  if (error) {
11
- console.error(error);
11
+ log.error(error);
12
12
  }
13
13
  else {
14
- console.log("Done with copyCommunityNoUsersNoEndorsementsOneGroup");
14
+ log.info("Done with copyCommunityNoUsersNoEndorsementsOneGroup");
15
15
  }
16
16
  process.exit();
17
17
  });
@@ -7,10 +7,10 @@ const communityId = process.argv[2];
7
7
  var domainId = process.argv[3];
8
8
  copyCommunityNoUsersNoEndorsements(communityId, domainId, (error) => {
9
9
  if (error) {
10
- console.error(error);
10
+ log.error(error);
11
11
  }
12
12
  else {
13
- console.log("Done with copyCommunityNoUsersNoEndorsements");
13
+ log.info("Done with copyCommunityNoUsersNoEndorsements");
14
14
  }
15
15
  process.exit();
16
16
  });
@@ -7,10 +7,10 @@ const communityId = process.argv[2];
7
7
  var domainId = process.argv[3];
8
8
  copyCommunityWithEverything(communityId, domainId, {}, (error) => {
9
9
  if (error) {
10
- console.error(error);
10
+ log.error(error);
11
11
  }
12
12
  else {
13
- console.log("Done with copyCommunityWithEverything");
13
+ log.info("Done with copyCommunityWithEverything");
14
14
  }
15
15
  process.exit();
16
16
  });