Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OI-281 expert review notifications #62

Merged
merged 37 commits into from
Mar 10, 2021

Conversation

nvelychenko
Copy link
Collaborator

No description provided.

…ields. Implement openideal_discussion module with: hook_form_FORM_ID_alter that hide title for the discussion add form, and body label; openideal_discussion_comment_create_access - that allows to add comments in Idea discussion only for group Author, Co-author and Expert; OpenidealDiscussionAddBlock - that has "Add Expert Review", and Export Review (@count) where count is all idea expert reviews. Install bootstrap4_modal module. Install Group Content discussion for the Idea group type. Create Idea discussions view block that displays all the ideas discussions. Add appropriate permissions for group_node:discussion group content. Apply patch to Drupal core that preventsmMultiple usages of FieldPluginBase::getEntity do not check for NULL, leading to WSOD.
… add new comments when field_status is false.
…dd appropriate conditions to discussions related blocks. Create event subscriber that react on layout builder SECTION_COMPONENT_BUILD_RENDER_ARRAY event and add "Read review" button to the discussion teaser mode. Add boolean field_visibility that indicates if the discussion is visible for user with certain permission. Rework logic of DuscissionAddBlock to restrict access to add discussions when node isn't in "Expert Review" state. Implement openideal_discussion_node_access that hide the discussion when field_visibility turned off and make it visible only for user with 'view unpublished group_node:discussion entity' permission. Add all needed fields into discussion teaser view mode.
…lement 'Create a message after adding discussion' rule, and make additional conditions to hide Discussion from default Create node rules, and to not create discussion if it's status "invisible". Fix MessageAction.php assignment selector. Implement styles for discussion message. Started creating access to now show the discussion after it was created, but status was changed to invisible.
Implement:
- message template 'New discussion';
- field_idea for Discussion and openideal_discussion_node_insert that automatically fill it;
- ability to show all needed for the discussion blocks.

Rework:
- Replace GroupMember->hasPermission checks with GroupPermissionChecker::hasPermissionInGroup;
- Add ability to show edit button, for OpenidealIdeaUpdateInfo.php block.
- openideal_discussion_node_access and openideal_discussion_comment_create_access: make these hooks use Group permission checker instead of Member permissions.
- "personal activity" view, add ability to show discussions and comments inside discussions for users those follows Idea.
- openideal_content_views_query_alter: Fix the join Instead of adding three time flagging relation ship in views change "main" join conditions.

Fix:
- GroupPageRedirect.php return logic.
Implement:
- message template 'New discussion';
- field_idea for Discussion and openideal_discussion_node_insert that automatically fill it;
- ability to show all needed for the discussion blocks.

Rework:
- Replace GroupMember->hasPermission checks with GroupPermissionChecker::hasPermissionInGroup;
- Add ability to show edit button, for OpenidealIdeaUpdateInfo.php block.
- openideal_discussion_node_access and openideal_discussion_comment_create_access: make these hooks use Group permission checker instead of Member permissions.
- "personal activity" view, add ability to show discussions and comments inside discussions for users those follows Idea.
- openideal_content_views_query_alter: Fix the join Instead of adding three time flagging relation ship in views change "main" join conditions.

Fix:
- GroupPageRedirect.php return logic.
…ropriate modules for openideal_idea, openideal_discussion, openideal_challenge. Install update helper module, and implement update hooks, and create config/update/* configurations for experts reviews changes.
…er module into hook idea profile update hook.
…odule. Move installing of update_helper into idea_update hook.
…ar/openideal into OI-281-expert-review-notifications
…p. Fixes the appropriate permissions for group roles. Removed field visibility and uses instead default published logic.
…-expert-review-notifications

# Conflicts:
#	composer.json
Sets:
  * explicit version for: ultimate_cron, rules, eu_cookie_compliance;

Implements:
  * ultimate_cron.* configuration update hooks;
  * eu_cookie_compliance.settings.yml update;

Fixes:
  * Private activity Views conditions, relations, view_query_alter extra join and creates for them update configuration;
  * Permission for openideal_discussion_comment_create_accesss hook;
  * Conditions for rules.reaction.create_a_message_after_adding_discussion.yml;
  * rules.reaction.create_a_message_after_replying_on_comment.yml conditions, and create update hook for it;
Fixes:
  * message.template.comment_created.yml email text, and creates for it update configuration.
  * adds ability to change status widget title also for node.discussion.edit form.
Changes:
  * body field now is required.
  * Go back logic, implements ability to add this block also to discussion node.
Implements:
  * full view mode display for discussion and attaches to it: Go back block.
  * ability to send emails for discussion_create and comments_created (in discussion) message templates.
Implements:
 * CSS styles for discussion teaser, and full view modes.
Reworks:
 * OpenidealBEMLayout.php: adds ability to set classes inside build() method, and removed unneeded classes from layout templates.
 * OpenidealFooterMobileFooterBlock.ph: adds ability to show comments and not render unneeded content for discussion.
Fixes:
 * Bug in layout builder, which doesn't give ability to move sections by drop-n-drag.
Exports:
 * configuration for blocks: mobile_footer, rrssb_footer; and creates for update for them;
Implements:
 * discussion full and teaser view modes layout_builder templates.
 * Layout builder styles: card;
Fixes:
 * CS.
  * OpenidealDiscussionExpertsVoting.php block, that provides ability to show Idea fivestar widget in discussion.
  * FiveStarWidget plugin block that overrides default plugin block and adds ability to set needed permission for the five stars widgets including group member.
  * Permission for Idea group: 'vote on five stars';
  * Field five-stars widget.
  * Updates configurations hook for field, blocks, view modes.
  * Styles for five-star related FE view.
  * Reworks OpenidealStatisticsIdeaStatisticsBlock.php: adds ability to show five-star widget when user check checkbox.
Implements:
  * Adds __global_actions to update helper.
  * Changes go back styles.
  * Adds tags icons for idea and discussion and attached them to Idea and Discussion full view modes.
  * Forms: Add five stars; Edit Five Stars;
  * Menu task;
  * openideal_theme_preprocess_votingapi_widgets_summary that add label variable to votingapi_widget_result template.
Reworks:
  * OpenidealDiscussionExpertsVoting.php block, make possibility show as many five stars widgets as they are attached to the Idea page.
nvelychenko and others added 7 commits January 15, 2021 19:20
…plements five stars vote results into the overall score formula. Reworks OpenidealHelper::computeOverallScore() signature, and service at all. Reworks OpenidealStatisticsIdeaStatisticsBlock.php block, adds ability to show all five stars widgets attached to the idea. Reworks votingapi-widgets-summary--oi-fivestar--node--idea.html.twig template, removes from the template label variable and related hook preprocess. Implements styles for, voting_api_field, discussion_experts_block.
…d ability to show fivestar weight in ScoreConfigForm.
@nvelychenko nvelychenko self-assigned this Mar 9, 2021
@nvelychenko nvelychenko merged commit 8860fcc into 3.x-master Mar 10, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant