FOUR-20322: [SPRING] Email and In-App Notifications Enabled by Default - #7934

Merged
ryancooley merged 181 commits into
release-2025-springfrom
epic/FOUR-20322
Feb 26, 2025
Merged

FOUR-20322: [SPRING] Email and In-App Notifications Enabled by Default#7934
ryancooley merged 181 commits into
release-2025-springfrom
epic/FOUR-20322

Conversation

@pmPaulis

@pmPaulispmPaulis commented Jan 24, 2025

Copy link
Copy Markdown
Contributor

Issue & Reproduction Steps

Email and In-App Notifications Enabled by Default

Spring 2025

Solution

  • As a Participant that has been assigned to a Task in ProcessMaker, I want to receive by default a notification to let me know I have a pending task.
  • As a Participant that receives email notifications, I want to be able to turn them off.
  • As a Participant that has been assigned to a Task in ProcessMaker, I want to receive an email notification to let me know I have a pending task.

Related Tickets & Packages

PR's related

https://github.com/ProcessMaker/package-actions-by-email/pull/135

Code Review Checklist

  • I have pulled this code locally and tested it on my instance, along with any associated packages.
  • This code adheres to ProcessMaker Coding Guidelines.
  • This code includes a unit test or an E2E test that tests its functionality, or is covered by an existing test.
  • This solution fixes the bug reported in the original ticket.
  • This solution does not alter the expected output of a component in a way that would break existing Processes.
  • This solution does not implement any breaking changes that would invalidate documentation or cause existing Processes to fail.
  • This solution has been tested with enterprise packages that rely on its functionality and does not introduce bugs in those packages.
  • This code does not duplicate functionality that already exists in the framework or in ProcessMaker.
  • This ticket conforms to the PRD associated with this part of ProcessMaker.

ci:deploy
ci:package-actions-by-email:bugfix/FOUR-21719

pmPaulisand others added 30 commits November 26, 2024 11:35
FOUR-20688: Create a migration to add a new column in the table users
FOUR-20670:Enable toogles Notifications per default - Participant Assigned and Due
FOUR-20677: Create the seeder to add the default screen for the email task notification
FOUR-20684: Add the new section Notification in User Profile
FOUR-20675:Create the DEFAULT EMAIL SCREEN related to this email
FOUR-20673: Create a new column to know if an email was sent
FOUR-20680: Send an email when the task and taskManual has an assignee and the toogle in users is enable and register
FOUR-21595: Please consider this task email notification only for new users
marcoAntonioNinaand others added 9 commits February 14, 2025 12:55
FOUR-21966 Do not log error case log when system like processes without case are updated
FOUR-21712:Form Task does not enable the assigne and Due
Fix multiple generators running at once and cleanup
FOUR-21927: The signature control disappears after refresh the page
FOUR-21958: inbox rules does not show the filter selected from the requests save search.
FOUR-21880:Overview does not show the pmblocks in Cases
Build #df323e06
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

ryancooleyand others added 2 commits February 18, 2025 08:39
FOUR-21949 there are problems running tests in the SettingCacheTest file
FOUR-21718: When the previous element is a element without user the text does not make sense
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

FOUR-22068: After the conflict need review the seeders for create default-email-task-notification
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

FOUR-21719 : Implement a method that utilizes asynchronous job dispatching
@pmPaulis
pmPaulis changed the base branch from release-2025-winter to release-2025-springFebruary 26, 2025 15:00
@pmPaulis

Copy link
Copy Markdown
ContributorAuthor

Update with release-2025-spring and marked Spring Review

@processmaker-sonarqube

Copy link
Copy Markdown

Quality Gate passedQuality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarQube

@pmPaulis

Copy link
Copy Markdown
ContributorAuthor

checks-pass-free

@ryancooley
ryancooley merged commit e8e84ea into release-2025-springFeb 26, 2025
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@pmPaulis@tokensPM@fagubla@henryjonathanquispe@ryancooley@sanjacornelius@nolanpro@eiresendez@boliviacoca@devmiguelangel@mcraeteisha@CarliPinell@julceslauhub@danloa@gusys@hjonathan@agustinbusso@marcoAntonioNina@gustavobascope@rodriquelca
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

FOUR-20322: [SPRING] Email and In-App Notifications Enabled by Default - #7934

Merged
ryancooley merged 181 commits into
release-2025-springfrom
epic/FOUR-20322
Feb 26, 2025
Merged

FOUR-20322: [SPRING] Email and In-App Notifications Enabled by Default#7934
ryancooley merged 181 commits into
release-2025-springfrom
epic/FOUR-20322

Conversation

@pmPaulis

@pmPaulispmPaulis commented Jan 24, 2025

Copy link
Copy Markdown
Contributor

Issue & Reproduction Steps

Email and In-App Notifications Enabled by Default

Spring 2025

Solution

  • As a Participant that has been assigned to a Task in ProcessMaker, I want to receive by default a notification to let me know I have a pending task.
  • As a Participant that receives email notifications, I want to be able to turn them off.
  • As a Participant that has been assigned to a Task in ProcessMaker, I want to receive an email notification to let me know I have a pending task.

Related Tickets & Packages

PR's related

https://github.com/ProcessMaker/package-actions-by-email/pull/135

Code Review Checklist

  • I have pulled this code locally and tested it on my instance, along with any associated packages.
  • This code adheres to ProcessMaker Coding Guidelines.
  • This code includes a unit test or an E2E test that tests its functionality, or is covered by an existing test.
  • This solution fixes the bug reported in the original ticket.
  • This solution does not alter the expected output of a component in a way that would break existing Processes.
  • This solution does not implement any breaking changes that would invalidate documentation or cause existing Processes to fail.
  • This solution has been tested with enterprise packages that rely on its functionality and does not introduce bugs in those packages.
  • This code does not duplicate functionality that already exists in the framework or in ProcessMaker.
  • This ticket conforms to the PRD associated with this part of ProcessMaker.

ci:deploy
ci:package-actions-by-email:bugfix/FOUR-21719

pmPaulisand others added 30 commits November 26, 2024 11:35
FOUR-20688: Create a migration to add a new column in the table users
FOUR-20670:Enable toogles Notifications per default - Participant Assigned and Due
FOUR-20677: Create the seeder to add the default screen for the email task notification
FOUR-20684: Add the new section Notification in User Profile
FOUR-20675:Create the DEFAULT EMAIL SCREEN related to this email
FOUR-20673: Create a new column to know if an email was sent
FOUR-20680: Send an email when the task and taskManual has an assignee and the toogle in users is enable and register
FOUR-21595: Please consider this task email notification only for new users
marcoAntonioNinaand others added 9 commits February 14, 2025 12:55
FOUR-21966 Do not log error case log when system like processes without case are updated
FOUR-21712:Form Task does not enable the assigne and Due
Fix multiple generators running at once and cleanup
FOUR-21927: The signature control disappears after refresh the page
FOUR-21958: inbox rules does not show the filter selected from the requests save search.
FOUR-21880:Overview does not show the pmblocks in Cases
Build #df323e06
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

ryancooleyand others added 2 commits February 18, 2025 08:39
FOUR-21949 there are problems running tests in the SettingCacheTest file
FOUR-21718: When the previous element is a element without user the text does not make sense
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

FOUR-22068: After the conflict need review the seeders for create default-email-task-notification
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

FOUR-21719 : Implement a method that utilizes asynchronous job dispatching
@pmPaulis
pmPaulis changed the base branch from release-2025-winter to release-2025-springFebruary 26, 2025 15:00
@pmPaulis

Copy link
Copy Markdown
ContributorAuthor

Update with release-2025-spring and marked Spring Review

@processmaker-sonarqube

Copy link
Copy Markdown

Quality Gate passedQuality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarQube

@pmPaulis

Copy link
Copy Markdown
ContributorAuthor

checks-pass-free

@ryancooley
ryancooley merged commit e8e84ea into release-2025-springFeb 26, 2025
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@pmPaulis@tokensPM@fagubla@henryjonathanquispe@ryancooley@sanjacornelius@nolanpro@eiresendez@boliviacoca@devmiguelangel@mcraeteisha@CarliPinell@julceslauhub@danloa@gusys@hjonathan@agustinbusso@marcoAntonioNina@gustavobascope@rodriquelca
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

FOUR-20322: [SPRING] Email and In-App Notifications Enabled by Default - #7934

Merged
ryancooley merged 181 commits into
release-2025-springfrom
epic/FOUR-20322
Feb 26, 2025
Merged

FOUR-20322: [SPRING] Email and In-App Notifications Enabled by Default#7934
ryancooley merged 181 commits into
release-2025-springfrom
epic/FOUR-20322

Conversation

@pmPaulis

@pmPaulispmPaulis commented Jan 24, 2025

Copy link
Copy Markdown
Contributor

Issue & Reproduction Steps

Email and In-App Notifications Enabled by Default

Spring 2025

Solution

  • As a Participant that has been assigned to a Task in ProcessMaker, I want to receive by default a notification to let me know I have a pending task.
  • As a Participant that receives email notifications, I want to be able to turn them off.
  • As a Participant that has been assigned to a Task in ProcessMaker, I want to receive an email notification to let me know I have a pending task.

Related Tickets & Packages

PR's related

https://github.com/ProcessMaker/package-actions-by-email/pull/135

Code Review Checklist

  • I have pulled this code locally and tested it on my instance, along with any associated packages.
  • This code adheres to ProcessMaker Coding Guidelines.
  • This code includes a unit test or an E2E test that tests its functionality, or is covered by an existing test.
  • This solution fixes the bug reported in the original ticket.
  • This solution does not alter the expected output of a component in a way that would break existing Processes.
  • This solution does not implement any breaking changes that would invalidate documentation or cause existing Processes to fail.
  • This solution has been tested with enterprise packages that rely on its functionality and does not introduce bugs in those packages.
  • This code does not duplicate functionality that already exists in the framework or in ProcessMaker.
  • This ticket conforms to the PRD associated with this part of ProcessMaker.

ci:deploy
ci:package-actions-by-email:bugfix/FOUR-21719

pmPaulisand others added 30 commits November 26, 2024 11:35
FOUR-20688: Create a migration to add a new column in the table users
FOUR-20670:Enable toogles Notifications per default - Participant Assigned and Due
FOUR-20677: Create the seeder to add the default screen for the email task notification
FOUR-20684: Add the new section Notification in User Profile
FOUR-20675:Create the DEFAULT EMAIL SCREEN related to this email
FOUR-20673: Create a new column to know if an email was sent
FOUR-20680: Send an email when the task and taskManual has an assignee and the toogle in users is enable and register
FOUR-21595: Please consider this task email notification only for new users
marcoAntonioNinaand others added 9 commits February 14, 2025 12:55
FOUR-21966 Do not log error case log when system like processes without case are updated
FOUR-21712:Form Task does not enable the assigne and Due
Fix multiple generators running at once and cleanup
FOUR-21927: The signature control disappears after refresh the page
FOUR-21958: inbox rules does not show the filter selected from the requests save search.
FOUR-21880:Overview does not show the pmblocks in Cases
Build #df323e06
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

ryancooleyand others added 2 commits February 18, 2025 08:39
FOUR-21949 there are problems running tests in the SettingCacheTest file
FOUR-21718: When the previous element is a element without user the text does not make sense
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

FOUR-22068: After the conflict need review the seeders for create default-email-task-notification
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

FOUR-21719 : Implement a method that utilizes asynchronous job dispatching
@pmPaulis
pmPaulis changed the base branch from release-2025-winter to release-2025-springFebruary 26, 2025 15:00
@pmPaulis

Copy link
Copy Markdown
ContributorAuthor

Update with release-2025-spring and marked Spring Review

@processmaker-sonarqube

Copy link
Copy Markdown

Quality Gate passedQuality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarQube

@pmPaulis

Copy link
Copy Markdown
ContributorAuthor

checks-pass-free

@ryancooley
ryancooley merged commit e8e84ea into release-2025-springFeb 26, 2025
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@pmPaulis@tokensPM@fagubla@henryjonathanquispe@ryancooley@sanjacornelius@nolanpro@eiresendez@boliviacoca@devmiguelangel@mcraeteisha@CarliPinell@julceslauhub@danloa@gusys@hjonathan@agustinbusso@marcoAntonioNina@gustavobascope@rodriquelca
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

FOUR-20322: [SPRING] Email and In-App Notifications Enabled by Default - #7934

Merged
ryancooley merged 181 commits into
release-2025-springfrom
epic/FOUR-20322
Feb 26, 2025
Merged

FOUR-20322: [SPRING] Email and In-App Notifications Enabled by Default#7934
ryancooley merged 181 commits into
release-2025-springfrom
epic/FOUR-20322

Conversation

@pmPaulis

@pmPaulispmPaulis commented Jan 24, 2025

Copy link
Copy Markdown
Contributor

Issue & Reproduction Steps

Email and In-App Notifications Enabled by Default

Spring 2025

Solution

  • As a Participant that has been assigned to a Task in ProcessMaker, I want to receive by default a notification to let me know I have a pending task.
  • As a Participant that receives email notifications, I want to be able to turn them off.
  • As a Participant that has been assigned to a Task in ProcessMaker, I want to receive an email notification to let me know I have a pending task.

Related Tickets & Packages

PR's related

https://github.com/ProcessMaker/package-actions-by-email/pull/135

Code Review Checklist

  • I have pulled this code locally and tested it on my instance, along with any associated packages.
  • This code adheres to ProcessMaker Coding Guidelines.
  • This code includes a unit test or an E2E test that tests its functionality, or is covered by an existing test.
  • This solution fixes the bug reported in the original ticket.
  • This solution does not alter the expected output of a component in a way that would break existing Processes.
  • This solution does not implement any breaking changes that would invalidate documentation or cause existing Processes to fail.
  • This solution has been tested with enterprise packages that rely on its functionality and does not introduce bugs in those packages.
  • This code does not duplicate functionality that already exists in the framework or in ProcessMaker.
  • This ticket conforms to the PRD associated with this part of ProcessMaker.

ci:deploy
ci:package-actions-by-email:bugfix/FOUR-21719

pmPaulisand others added 30 commits November 26, 2024 11:35
FOUR-20688: Create a migration to add a new column in the table users
FOUR-20670:Enable toogles Notifications per default - Participant Assigned and Due
FOUR-20677: Create the seeder to add the default screen for the email task notification
FOUR-20684: Add the new section Notification in User Profile
FOUR-20675:Create the DEFAULT EMAIL SCREEN related to this email
FOUR-20673: Create a new column to know if an email was sent
FOUR-20680: Send an email when the task and taskManual has an assignee and the toogle in users is enable and register
FOUR-21595: Please consider this task email notification only for new users
marcoAntonioNinaand others added 9 commits February 14, 2025 12:55
FOUR-21966 Do not log error case log when system like processes without case are updated
FOUR-21712:Form Task does not enable the assigne and Due
Fix multiple generators running at once and cleanup
FOUR-21927: The signature control disappears after refresh the page
FOUR-21958: inbox rules does not show the filter selected from the requests save search.
FOUR-21880:Overview does not show the pmblocks in Cases
Build #df323e06
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

ryancooleyand others added 2 commits February 18, 2025 08:39
FOUR-21949 there are problems running tests in the SettingCacheTest file
FOUR-21718: When the previous element is a element without user the text does not make sense
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

FOUR-22068: After the conflict need review the seeders for create default-email-task-notification
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

FOUR-21719 : Implement a method that utilizes asynchronous job dispatching
@pmPaulis
pmPaulis changed the base branch from release-2025-winter to release-2025-springFebruary 26, 2025 15:00
@pmPaulis

Copy link
Copy Markdown
ContributorAuthor

Update with release-2025-spring and marked Spring Review

@processmaker-sonarqube

Copy link
Copy Markdown

Quality Gate passedQuality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarQube

@pmPaulis

Copy link
Copy Markdown
ContributorAuthor

checks-pass-free

@ryancooley
ryancooley merged commit e8e84ea into release-2025-springFeb 26, 2025
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@pmPaulis@tokensPM@fagubla@henryjonathanquispe@ryancooley@sanjacornelius@nolanpro@eiresendez@boliviacoca@devmiguelangel@mcraeteisha@CarliPinell@julceslauhub@danloa@gusys@hjonathan@agustinbusso@marcoAntonioNina@gustavobascope@rodriquelca
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

FOUR-20322: [SPRING] Email and In-App Notifications Enabled by Default - #7934

Merged
ryancooley merged 181 commits into
release-2025-springfrom
epic/FOUR-20322
Feb 26, 2025
Merged

FOUR-20322: [SPRING] Email and In-App Notifications Enabled by Default#7934
ryancooley merged 181 commits into
release-2025-springfrom
epic/FOUR-20322

Conversation

@pmPaulis

@pmPaulispmPaulis commented Jan 24, 2025

Copy link
Copy Markdown
Contributor

Issue & Reproduction Steps

Email and In-App Notifications Enabled by Default

Spring 2025

Solution

  • As a Participant that has been assigned to a Task in ProcessMaker, I want to receive by default a notification to let me know I have a pending task.
  • As a Participant that receives email notifications, I want to be able to turn them off.
  • As a Participant that has been assigned to a Task in ProcessMaker, I want to receive an email notification to let me know I have a pending task.

Related Tickets & Packages

PR's related

https://github.com/ProcessMaker/package-actions-by-email/pull/135

Code Review Checklist

  • I have pulled this code locally and tested it on my instance, along with any associated packages.
  • This code adheres to ProcessMaker Coding Guidelines.
  • This code includes a unit test or an E2E test that tests its functionality, or is covered by an existing test.
  • This solution fixes the bug reported in the original ticket.
  • This solution does not alter the expected output of a component in a way that would break existing Processes.
  • This solution does not implement any breaking changes that would invalidate documentation or cause existing Processes to fail.
  • This solution has been tested with enterprise packages that rely on its functionality and does not introduce bugs in those packages.
  • This code does not duplicate functionality that already exists in the framework or in ProcessMaker.
  • This ticket conforms to the PRD associated with this part of ProcessMaker.

ci:deploy
ci:package-actions-by-email:bugfix/FOUR-21719

pmPaulisand others added 30 commits November 26, 2024 11:35
FOUR-20688: Create a migration to add a new column in the table users
FOUR-20670:Enable toogles Notifications per default - Participant Assigned and Due
FOUR-20677: Create the seeder to add the default screen for the email task notification
FOUR-20684: Add the new section Notification in User Profile
FOUR-20675:Create the DEFAULT EMAIL SCREEN related to this email
FOUR-20673: Create a new column to know if an email was sent
FOUR-20680: Send an email when the task and taskManual has an assignee and the toogle in users is enable and register
FOUR-21595: Please consider this task email notification only for new users
marcoAntonioNinaand others added 9 commits February 14, 2025 12:55
FOUR-21966 Do not log error case log when system like processes without case are updated
FOUR-21712:Form Task does not enable the assigne and Due
Fix multiple generators running at once and cleanup
FOUR-21927: The signature control disappears after refresh the page
FOUR-21958: inbox rules does not show the filter selected from the requests save search.
FOUR-21880:Overview does not show the pmblocks in Cases
Build #df323e06
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

ryancooleyand others added 2 commits February 18, 2025 08:39
FOUR-21949 there are problems running tests in the SettingCacheTest file
FOUR-21718: When the previous element is a element without user the text does not make sense
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

FOUR-22068: After the conflict need review the seeders for create default-email-task-notification
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

FOUR-21719 : Implement a method that utilizes asynchronous job dispatching
@pmPaulis
pmPaulis changed the base branch from release-2025-winter to release-2025-springFebruary 26, 2025 15:00
@pmPaulis

Copy link
Copy Markdown
ContributorAuthor

Update with release-2025-spring and marked Spring Review

@processmaker-sonarqube

Copy link
Copy Markdown

Quality Gate passedQuality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarQube

@pmPaulis

Copy link
Copy Markdown
ContributorAuthor

checks-pass-free

@ryancooley
ryancooley merged commit e8e84ea into release-2025-springFeb 26, 2025
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@pmPaulis@tokensPM@fagubla@henryjonathanquispe@ryancooley@sanjacornelius@nolanpro@eiresendez@boliviacoca@devmiguelangel@mcraeteisha@CarliPinell@julceslauhub@danloa@gusys@hjonathan@agustinbusso@marcoAntonioNina@gustavobascope@rodriquelca
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

FOUR-20322: [SPRING] Email and In-App Notifications Enabled by Default - #7934

Merged
ryancooley merged 181 commits into
release-2025-springfrom
epic/FOUR-20322
Feb 26, 2025
Merged

FOUR-20322: [SPRING] Email and In-App Notifications Enabled by Default#7934
ryancooley merged 181 commits into
release-2025-springfrom
epic/FOUR-20322

Conversation

@pmPaulis

@pmPaulispmPaulis commented Jan 24, 2025

Copy link
Copy Markdown
Contributor

Issue & Reproduction Steps

Email and In-App Notifications Enabled by Default

Spring 2025

Solution

  • As a Participant that has been assigned to a Task in ProcessMaker, I want to receive by default a notification to let me know I have a pending task.
  • As a Participant that receives email notifications, I want to be able to turn them off.
  • As a Participant that has been assigned to a Task in ProcessMaker, I want to receive an email notification to let me know I have a pending task.

Related Tickets & Packages

PR's related

https://github.com/ProcessMaker/package-actions-by-email/pull/135

Code Review Checklist

  • I have pulled this code locally and tested it on my instance, along with any associated packages.
  • This code adheres to ProcessMaker Coding Guidelines.
  • This code includes a unit test or an E2E test that tests its functionality, or is covered by an existing test.
  • This solution fixes the bug reported in the original ticket.
  • This solution does not alter the expected output of a component in a way that would break existing Processes.
  • This solution does not implement any breaking changes that would invalidate documentation or cause existing Processes to fail.
  • This solution has been tested with enterprise packages that rely on its functionality and does not introduce bugs in those packages.
  • This code does not duplicate functionality that already exists in the framework or in ProcessMaker.
  • This ticket conforms to the PRD associated with this part of ProcessMaker.

ci:deploy
ci:package-actions-by-email:bugfix/FOUR-21719

pmPaulisand others added 30 commits November 26, 2024 11:35
FOUR-20688: Create a migration to add a new column in the table users
FOUR-20670:Enable toogles Notifications per default - Participant Assigned and Due
FOUR-20677: Create the seeder to add the default screen for the email task notification
FOUR-20684: Add the new section Notification in User Profile
FOUR-20675:Create the DEFAULT EMAIL SCREEN related to this email
FOUR-20673: Create a new column to know if an email was sent
FOUR-20680: Send an email when the task and taskManual has an assignee and the toogle in users is enable and register
FOUR-21595: Please consider this task email notification only for new users
marcoAntonioNinaand others added 9 commits February 14, 2025 12:55
FOUR-21966 Do not log error case log when system like processes without case are updated
FOUR-21712:Form Task does not enable the assigne and Due
Fix multiple generators running at once and cleanup
FOUR-21927: The signature control disappears after refresh the page
FOUR-21958: inbox rules does not show the filter selected from the requests save search.
FOUR-21880:Overview does not show the pmblocks in Cases
Build #df323e06
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

ryancooleyand others added 2 commits February 18, 2025 08:39
FOUR-21949 there are problems running tests in the SettingCacheTest file
FOUR-21718: When the previous element is a element without user the text does not make sense
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

FOUR-22068: After the conflict need review the seeders for create default-email-task-notification
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

FOUR-21719 : Implement a method that utilizes asynchronous job dispatching
@pmPaulis
pmPaulis changed the base branch from release-2025-winter to release-2025-springFebruary 26, 2025 15:00
@pmPaulis

Copy link
Copy Markdown
ContributorAuthor

Update with release-2025-spring and marked Spring Review

@processmaker-sonarqube

Copy link
Copy Markdown

Quality Gate passedQuality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarQube

@pmPaulis

Copy link
Copy Markdown
ContributorAuthor

checks-pass-free

@ryancooley
ryancooley merged commit e8e84ea into release-2025-springFeb 26, 2025
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@pmPaulis@tokensPM@fagubla@henryjonathanquispe@ryancooley@sanjacornelius@nolanpro@eiresendez@boliviacoca@devmiguelangel@mcraeteisha@CarliPinell@julceslauhub@danloa@gusys@hjonathan@agustinbusso@marcoAntonioNina@gustavobascope@rodriquelca
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

FOUR-20322: [SPRING] Email and In-App Notifications Enabled by Default - #7934

Merged
ryancooley merged 181 commits into
release-2025-springfrom
epic/FOUR-20322
Feb 26, 2025
Merged

FOUR-20322: [SPRING] Email and In-App Notifications Enabled by Default#7934
ryancooley merged 181 commits into
release-2025-springfrom
epic/FOUR-20322

Conversation

@pmPaulis

@pmPaulispmPaulis commented Jan 24, 2025

Copy link
Copy Markdown
Contributor

Issue & Reproduction Steps

Email and In-App Notifications Enabled by Default

Spring 2025

Solution

  • As a Participant that has been assigned to a Task in ProcessMaker, I want to receive by default a notification to let me know I have a pending task.
  • As a Participant that receives email notifications, I want to be able to turn them off.
  • As a Participant that has been assigned to a Task in ProcessMaker, I want to receive an email notification to let me know I have a pending task.

Related Tickets & Packages

PR's related

https://github.com/ProcessMaker/package-actions-by-email/pull/135

Code Review Checklist

  • I have pulled this code locally and tested it on my instance, along with any associated packages.
  • This code adheres to ProcessMaker Coding Guidelines.
  • This code includes a unit test or an E2E test that tests its functionality, or is covered by an existing test.
  • This solution fixes the bug reported in the original ticket.
  • This solution does not alter the expected output of a component in a way that would break existing Processes.
  • This solution does not implement any breaking changes that would invalidate documentation or cause existing Processes to fail.
  • This solution has been tested with enterprise packages that rely on its functionality and does not introduce bugs in those packages.
  • This code does not duplicate functionality that already exists in the framework or in ProcessMaker.
  • This ticket conforms to the PRD associated with this part of ProcessMaker.

ci:deploy
ci:package-actions-by-email:bugfix/FOUR-21719

pmPaulisand others added 30 commits November 26, 2024 11:35
FOUR-20688: Create a migration to add a new column in the table users
FOUR-20670:Enable toogles Notifications per default - Participant Assigned and Due
FOUR-20677: Create the seeder to add the default screen for the email task notification
FOUR-20684: Add the new section Notification in User Profile
FOUR-20675:Create the DEFAULT EMAIL SCREEN related to this email
FOUR-20673: Create a new column to know if an email was sent
FOUR-20680: Send an email when the task and taskManual has an assignee and the toogle in users is enable and register
FOUR-21595: Please consider this task email notification only for new users
marcoAntonioNinaand others added 9 commits February 14, 2025 12:55
FOUR-21966 Do not log error case log when system like processes without case are updated
FOUR-21712:Form Task does not enable the assigne and Due
Fix multiple generators running at once and cleanup
FOUR-21927: The signature control disappears after refresh the page
FOUR-21958: inbox rules does not show the filter selected from the requests save search.
FOUR-21880:Overview does not show the pmblocks in Cases
Build #df323e06
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

ryancooleyand others added 2 commits February 18, 2025 08:39
FOUR-21949 there are problems running tests in the SettingCacheTest file
FOUR-21718: When the previous element is a element without user the text does not make sense
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

FOUR-22068: After the conflict need review the seeders for create default-email-task-notification
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

FOUR-21719 : Implement a method that utilizes asynchronous job dispatching
@pmPaulis
pmPaulis changed the base branch from release-2025-winter to release-2025-springFebruary 26, 2025 15:00
@pmPaulis

Copy link
Copy Markdown
ContributorAuthor

Update with release-2025-spring and marked Spring Review

@processmaker-sonarqube

Copy link
Copy Markdown

Quality Gate passedQuality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarQube

@pmPaulis

Copy link
Copy Markdown
ContributorAuthor

checks-pass-free

@ryancooley
ryancooley merged commit e8e84ea into release-2025-springFeb 26, 2025
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@pmPaulis@tokensPM@fagubla@henryjonathanquispe@ryancooley@sanjacornelius@nolanpro@eiresendez@boliviacoca@devmiguelangel@mcraeteisha@CarliPinell@julceslauhub@danloa@gusys@hjonathan@agustinbusso@marcoAntonioNina@gustavobascope@rodriquelca
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

FOUR-20322: [SPRING] Email and In-App Notifications Enabled by Default - #7934

Merged
ryancooley merged 181 commits into
release-2025-springfrom
epic/FOUR-20322
Feb 26, 2025
Merged

FOUR-20322: [SPRING] Email and In-App Notifications Enabled by Default#7934
ryancooley merged 181 commits into
release-2025-springfrom
epic/FOUR-20322

Conversation

@pmPaulis

@pmPaulispmPaulis commented Jan 24, 2025

Copy link
Copy Markdown
Contributor

Issue & Reproduction Steps

Email and In-App Notifications Enabled by Default

Spring 2025

Solution

  • As a Participant that has been assigned to a Task in ProcessMaker, I want to receive by default a notification to let me know I have a pending task.
  • As a Participant that receives email notifications, I want to be able to turn them off.
  • As a Participant that has been assigned to a Task in ProcessMaker, I want to receive an email notification to let me know I have a pending task.

Related Tickets & Packages

PR's related

https://github.com/ProcessMaker/package-actions-by-email/pull/135

Code Review Checklist

  • I have pulled this code locally and tested it on my instance, along with any associated packages.
  • This code adheres to ProcessMaker Coding Guidelines.
  • This code includes a unit test or an E2E test that tests its functionality, or is covered by an existing test.
  • This solution fixes the bug reported in the original ticket.
  • This solution does not alter the expected output of a component in a way that would break existing Processes.
  • This solution does not implement any breaking changes that would invalidate documentation or cause existing Processes to fail.
  • This solution has been tested with enterprise packages that rely on its functionality and does not introduce bugs in those packages.
  • This code does not duplicate functionality that already exists in the framework or in ProcessMaker.
  • This ticket conforms to the PRD associated with this part of ProcessMaker.

ci:deploy
ci:package-actions-by-email:bugfix/FOUR-21719

pmPaulisand others added 30 commits November 26, 2024 11:35
FOUR-20688: Create a migration to add a new column in the table users
FOUR-20670:Enable toogles Notifications per default - Participant Assigned and Due
FOUR-20677: Create the seeder to add the default screen for the email task notification
FOUR-20684: Add the new section Notification in User Profile
FOUR-20675:Create the DEFAULT EMAIL SCREEN related to this email
FOUR-20673: Create a new column to know if an email was sent
FOUR-20680: Send an email when the task and taskManual has an assignee and the toogle in users is enable and register
FOUR-21595: Please consider this task email notification only for new users
marcoAntonioNinaand others added 9 commits February 14, 2025 12:55
FOUR-21966 Do not log error case log when system like processes without case are updated
FOUR-21712:Form Task does not enable the assigne and Due
Fix multiple generators running at once and cleanup
FOUR-21927: The signature control disappears after refresh the page
FOUR-21958: inbox rules does not show the filter selected from the requests save search.
FOUR-21880:Overview does not show the pmblocks in Cases
Build #df323e06
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

ryancooleyand others added 2 commits February 18, 2025 08:39
FOUR-21949 there are problems running tests in the SettingCacheTest file
FOUR-21718: When the previous element is a element without user the text does not make sense
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

FOUR-22068: After the conflict need review the seeders for create default-email-task-notification
@tokensPM

Copy link
Copy Markdown

QA server K8S was successfully deployed https://ci-b36ab5da1f.engk8s.processmaker.net

FOUR-21719 : Implement a method that utilizes asynchronous job dispatching
@pmPaulis
pmPaulis changed the base branch from release-2025-winter to release-2025-springFebruary 26, 2025 15:00
@pmPaulis

Copy link
Copy Markdown
ContributorAuthor

Update with release-2025-spring and marked Spring Review

@processmaker-sonarqube

Copy link
Copy Markdown

Quality Gate passedQuality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarQube

@pmPaulis

Copy link
Copy Markdown
ContributorAuthor

checks-pass-free

@ryancooley
ryancooley merged commit e8e84ea into release-2025-springFeb 26, 2025
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

20 participants

@pmPaulis@tokensPM@fagubla@henryjonathanquispe@ryancooley@sanjacornelius@nolanpro@eiresendez@boliviacoca@devmiguelangel@mcraeteisha@CarliPinell@julceslauhub@danloa@gusys@hjonathan@agustinbusso@marcoAntonioNina@gustavobascope@rodriquelca