diff --git a/composer.json b/composer.json
index 1a161841d..9ad2a9854 100644
--- a/composer.json
+++ b/composer.json
@@ -173,34 +173,34 @@
],
"require": {
"bower-asset/c3": "^0.7.20",
+ "ckeditor/ajax": "4.14.1",
+ "ckeditor/autocomplete": "4.14.1",
+ "ckeditor/autoembed": "4.14.1",
+ "ckeditor/autolink": "4.14.1",
+ "ckeditor/embed": "4.14.1",
+ "ckeditor/embedbase": "4.14.1",
+ "ckeditor/embedsemantic": "4.14.1",
+ "ckeditor/mentions": "4.14.1",
+ "ckeditor/notification": "4.14.1",
+ "ckeditor/notificationaggregator": "4.14.1",
+ "ckeditor/textmatch": "4.14.1",
+ "ckeditor/textwatcher": "4.14.1",
+ "ckeditor/xml": "4.14.1",
"composer/installers": "^1.2",
"cweagans/composer-patches": "^1.6",
"drupal/admin_toolbar": "^2.2",
"drupal/adminimal_admin_toolbar": "^1.10",
"drupal/adminimal_theme": "^1.5",
"drupal/administerusersbyrole": "^3.0",
- "drupal/ajax_comments": "1.x-dev",
+ "drupal/ajax_comments": "1.x-dev#4b0c423",
"drupal/allowed_formats": "^1.2",
"drupal/avatars": "^1.1",
"drupal/better_exposed_filters": "^4.0",
"drupal/bootstrap_barrio": "^5.0",
"drupal/ckeditor_media_embed": "^1.9",
- "drupal/ckeditor_mentions": "2.x-dev",
+ "drupal/ckeditor_mentions": "2.x-dev#272a28e7",
"drupal/comments_order": "^1.1",
"drupal/config_pages": "^2.6",
- "ckeditor/ajax": "4.14.1",
- "ckeditor/autocomplete": "4.14.1",
- "ckeditor/mentions": "4.14.1",
- "ckeditor/textmatch": "4.14.1",
- "ckeditor/textwatcher": "4.14.1",
- "ckeditor/xml": "4.14.1",
- "ckeditor/notificationaggregator": "4.14.1",
- "ckeditor/notification": "4.14.1",
- "ckeditor/autolink": "4.14.1",
- "ckeditor/autoembed": "4.14.1",
- "ckeditor/embedbase": "4.14.1",
- "ckeditor/embedsemantic": "4.14.1",
- "ckeditor/embed": "4.14.1",
"drupal/ctools": "^3.4",
"drupal/default_content": "^2.0",
"drupal/dropzonejs": "^2.1",
@@ -213,13 +213,13 @@
"drupal/group": "1.3",
"drupal/honeypot": "^2.0",
"drupal/layout_builder_styles": "^1.0@beta",
- "drupal/metatag": "^1.13",
"drupal/message": "1.1",
"drupal/message_notify": "^1.1",
+ "drupal/metatag": "^1.13",
"drupal/moderation_state_buttons_widget": "^1.0@alpha",
"drupal/multiple_fields_remove_button": "^1.0@alpha",
"drupal/paragraphs": "^1.11",
- "drupal/rabbit_hole": "^1.0-beta7",
+ "drupal/rabbit_hole": "1.0-beta9",
"drupal/redirect": "^1.6",
"drupal/route_condition": "^1.1",
"drupal/rrssb": "^2.2",
@@ -232,18 +232,19 @@
"drupal/twig_field_value": "^2.0",
"drupal/twig_tweak": "^2.5",
"drupal/ultimate_cron": "^2.0@alpha",
- "drupal/userpoints": "^1.0@alpha",
"drupal/user_registrationpassword": "1.x-dev",
+ "drupal/userpoints": "^1.0@alpha",
"drupal/views_data_export": "^1.0",
"drupal/votingapi": "3.x-dev",
"drupal/votingapi_reaction": "^1.1",
"drupal/votingapi_widgets": "1.0-alpha5",
- "npm-asset/masonry-layout": "^4.2",
- "npm-asset/imagesloaded": "^4.1",
"npm-asset/dropzone": "^5.7",
+ "npm-asset/imagesloaded": "^4.1",
"npm-asset/jquery-bar-rating": "^1.2",
- "npm-asset/swiper": "^6.1",
+ "npm-asset/link-underliner": "^1.0",
+ "npm-asset/masonry-layout": "^4.2",
"npm-asset/photoswipe": "^4.1",
+ "npm-asset/swiper": "^6.1",
"oomphinc/composer-installers-extender": "^1.1"
},
"provide": {
@@ -279,9 +280,6 @@
},
"drupal/group": {
"Permissions to choose which roles a member can assign, edit or delete": "https://www.drupal.org/files/issues/2020-07-27/group-user-manage-by-role-permissions-3027685-29.patch"
- },
- "drupal/rabbit_hole": {
- "Split performAction() into submethods in PageRedirect Behaviour": "https://www.drupal.org/files/issues/2019-11-21/3095653-5.patch"
}
}
}
diff --git a/config/install/block.block.openideal_theme_local_tasks.yml b/config/install/block.block.openideal_theme_local_tasks.yml
index e28e77655..5d8c0e36f 100644
--- a/config/install/block.block.openideal_theme_local_tasks.yml
+++ b/config/install/block.block.openideal_theme_local_tasks.yml
@@ -21,6 +21,6 @@ settings:
visibility:
route:
id: route
- routes: entity.user.canonical
+ routes: "entity.user.canonical\r\nuser.login\r\nuser.logout\r\nuser.register\r\nuser.pass"
negate: true
context_mapping: { }
diff --git a/config/install/core.entity_form_display.message.user_mention.default.yml b/config/install/core.entity_form_display.message.user_mention.default.yml
new file mode 100644
index 000000000..115a28f9b
--- /dev/null
+++ b/config/install/core.entity_form_display.message.user_mention.default.yml
@@ -0,0 +1,33 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - field.field.message.user_mention.field_comment_reference
+ - field.field.message.user_mention.field_node_reference
+ - message.template.user_mention
+id: message.user_mention.default
+targetEntityType: message
+bundle: user_mention
+mode: default
+content:
+ field_comment_reference:
+ weight: 1
+ settings:
+ match_operator: CONTAINS
+ match_limit: 10
+ size: 60
+ placeholder: ''
+ third_party_settings: { }
+ type: entity_reference_autocomplete
+ region: content
+ field_node_reference:
+ weight: 0
+ settings:
+ match_operator: CONTAINS
+ match_limit: 10
+ size: 60
+ placeholder: ''
+ third_party_settings: { }
+ type: entity_reference_autocomplete
+ region: content
+hidden: { }
diff --git a/config/install/core.entity_view_display.message.user_mention.default.yml b/config/install/core.entity_view_display.message.user_mention.default.yml
new file mode 100644
index 000000000..040975479
--- /dev/null
+++ b/config/install/core.entity_view_display.message.user_mention.default.yml
@@ -0,0 +1,33 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - field.field.message.user_mention.field_comment_reference
+ - field.field.message.user_mention.field_node_reference
+ - message.template.user_mention
+id: message.user_mention.default
+targetEntityType: message
+bundle: user_mention
+mode: default
+content:
+ field_comment_reference:
+ type: entity_reference_entity_view
+ weight: 1
+ region: content
+ label: hidden
+ settings:
+ view_mode: message
+ link: false
+ offset: 0
+ limit: 0
+ third_party_settings: { }
+ partial_0:
+ weight: 0
+ region: content
+ settings: { }
+ third_party_settings: { }
+hidden:
+ field_node_reference: true
+ partial_1: true
+ partial_2: true
+ partial_3: true
diff --git a/config/install/core.entity_view_display.message.user_mention.mail_body.yml b/config/install/core.entity_view_display.message.user_mention.mail_body.yml
new file mode 100644
index 000000000..6541cff65
--- /dev/null
+++ b/config/install/core.entity_view_display.message.user_mention.mail_body.yml
@@ -0,0 +1,30 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - core.entity_view_mode.message.mail_body
+ - field.field.message.user_mention.field_comment_reference
+ - field.field.message.user_mention.field_node_reference
+ - message.template.user_mention
+ module:
+ - layout_builder
+third_party_settings:
+ layout_builder:
+ allow_custom: false
+ enabled: false
+id: message.user_mention.mail_body
+targetEntityType: message
+bundle: user_mention
+mode: mail_body
+content:
+ partial_2:
+ weight: 0
+ region: content
+ settings: { }
+ third_party_settings: { }
+hidden:
+ field_comment_reference: true
+ field_node_reference: true
+ partial_0: true
+ partial_1: true
+ partial_3: true
diff --git a/config/install/core.entity_view_display.message.user_mention.mail_subject.yml b/config/install/core.entity_view_display.message.user_mention.mail_subject.yml
new file mode 100644
index 000000000..cfb8c28b0
--- /dev/null
+++ b/config/install/core.entity_view_display.message.user_mention.mail_subject.yml
@@ -0,0 +1,30 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - core.entity_view_mode.message.mail_subject
+ - field.field.message.user_mention.field_comment_reference
+ - field.field.message.user_mention.field_node_reference
+ - message.template.user_mention
+ module:
+ - layout_builder
+third_party_settings:
+ layout_builder:
+ allow_custom: false
+ enabled: false
+id: message.user_mention.mail_subject
+targetEntityType: message
+bundle: user_mention
+mode: mail_subject
+content:
+ partial_1:
+ weight: 0
+ region: content
+ settings: { }
+ third_party_settings: { }
+hidden:
+ field_comment_reference: true
+ field_node_reference: true
+ partial_0: true
+ partial_2: true
+ partial_3: true
diff --git a/config/install/core.entity_view_display.message.user_mention.mentioned_user.yml b/config/install/core.entity_view_display.message.user_mention.mentioned_user.yml
new file mode 100644
index 000000000..f332341ba
--- /dev/null
+++ b/config/install/core.entity_view_display.message.user_mention.mentioned_user.yml
@@ -0,0 +1,40 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - core.entity_view_mode.message.mentioned_user
+ - field.field.message.user_mention.field_comment_reference
+ - field.field.message.user_mention.field_node_reference
+ - message.template.user_mention
+ module:
+ - layout_builder
+third_party_settings:
+ layout_builder:
+ allow_custom: false
+ enabled: false
+id: message.user_mention.mentioned_user
+targetEntityType: message
+bundle: user_mention
+mode: mentioned_user
+content:
+ field_comment_reference:
+ type: entity_reference_entity_view
+ weight: 1
+ region: content
+ label: hidden
+ settings:
+ view_mode: message
+ link: false
+ offset: 0
+ limit: 0
+ third_party_settings: { }
+ partial_3:
+ weight: 0
+ region: content
+ settings: { }
+ third_party_settings: { }
+hidden:
+ field_node_reference: true
+ partial_0: true
+ partial_1: true
+ partial_2: true
diff --git a/config/install/core.entity_view_mode.message.mentioned_user.yml b/config/install/core.entity_view_mode.message.mentioned_user.yml
new file mode 100644
index 000000000..fea631c07
--- /dev/null
+++ b/config/install/core.entity_view_mode.message.mentioned_user.yml
@@ -0,0 +1,9 @@
+langcode: en
+status: true
+dependencies:
+ module:
+ - message
+id: message.mentioned_user
+label: 'Mentioned user'
+targetEntityType: message
+cache: true
diff --git a/config/install/editor.editor.basic_html.yml b/config/install/editor.editor.basic_html.yml
index f06849002..b2fe4726c 100644
--- a/config/install/editor.editor.basic_html.yml
+++ b/config/install/editor.editor.basic_html.yml
@@ -30,7 +30,6 @@ settings:
name: Media
items:
- Blockquote
- - DrupalImage
-
name: 'Block Formatting'
items:
diff --git a/config/install/editor.editor.basic_html_with_embedded_video.yml b/config/install/editor.editor.basic_html_with_embedded_video.yml
index 5cdad0446..43432c357 100644
--- a/config/install/editor.editor.basic_html_with_embedded_video.yml
+++ b/config/install/editor.editor.basic_html_with_embedded_video.yml
@@ -30,7 +30,6 @@ settings:
name: Media
items:
- Blockquote
- - DrupalImage
- EmbedSemantic
-
name: 'Block formatting'
diff --git a/config/install/editor.editor.full_html.yml b/config/install/editor.editor.full_html.yml
index f5dd7bcc1..fc00deb6e 100644
--- a/config/install/editor.editor.full_html.yml
+++ b/config/install/editor.editor.full_html.yml
@@ -35,7 +35,6 @@ settings:
name: Media
items:
- Blockquote
- - DrupalImage
- Table
- HorizontalRule
-
diff --git a/config/install/entity_browser.browser.openideal_file_browser.yml b/config/install/entity_browser.browser.openideal_file_browser.yml
index 508b7ba54..6740beb4e 100644
--- a/config/install/entity_browser.browser.openideal_file_browser.yml
+++ b/config/install/entity_browser.browser.openideal_file_browser.yml
@@ -7,8 +7,8 @@ name: openideal_file_browser
label: 'Openideal File Browser'
display: modal
display_configuration:
- width: '650'
- height: '500'
+ width: '1030'
+ height: '700'
link_text: 'Select files'
auto_open: false
selection_display: no_display
diff --git a/config/install/entity_browser.browser.openideal_image_browser.yml b/config/install/entity_browser.browser.openideal_image_browser.yml
index bc4a8b16e..0d5d7ca33 100644
--- a/config/install/entity_browser.browser.openideal_image_browser.yml
+++ b/config/install/entity_browser.browser.openideal_image_browser.yml
@@ -7,8 +7,8 @@ name: openideal_image_browser
label: 'Openideal Image Browser'
display: modal
display_configuration:
- width: '650'
- height: '500'
+ width: '1030'
+ height: '700'
link_text: 'Select image'
auto_open: false
selection_display: no_display
diff --git a/config/install/entity_browser.browser.openideal_images_browser.yml b/config/install/entity_browser.browser.openideal_images_browser.yml
index 995a75975..0e674773d 100644
--- a/config/install/entity_browser.browser.openideal_images_browser.yml
+++ b/config/install/entity_browser.browser.openideal_images_browser.yml
@@ -7,8 +7,8 @@ name: openideal_images_browser
label: 'Openideal Images Browser'
display: modal
display_configuration:
- width: '650'
- height: '500'
+ width: '1030'
+ height: '700'
link_text: 'Select images'
auto_open: false
selection_display: no_display
diff --git a/config/install/field.field.message.user_mention.field_comment_reference.yml b/config/install/field.field.message.user_mention.field_comment_reference.yml
new file mode 100644
index 000000000..1f2fefc06
--- /dev/null
+++ b/config/install/field.field.message.user_mention.field_comment_reference.yml
@@ -0,0 +1,27 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - comment.type.comment
+ - field.storage.message.field_comment_reference
+ - message.template.user_mention
+id: message.user_mention.field_comment_reference
+field_name: field_comment_reference
+entity_type: message
+bundle: user_mention
+label: 'Comment reference'
+description: ''
+required: false
+translatable: true
+default_value: { }
+default_value_callback: ''
+settings:
+ handler: 'default:comment'
+ handler_settings:
+ target_bundles:
+ comment: comment
+ sort:
+ field: _none
+ auto_create: false
+ auto_create_bundle: ''
+field_type: entity_reference
diff --git a/config/install/field.field.message.user_mention.field_node_reference.yml b/config/install/field.field.message.user_mention.field_node_reference.yml
new file mode 100644
index 000000000..b1d709d06
--- /dev/null
+++ b/config/install/field.field.message.user_mention.field_node_reference.yml
@@ -0,0 +1,29 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - field.storage.message.field_node_reference
+ - message.template.user_mention
+ - node.type.challenge
+ - node.type.idea
+id: message.user_mention.field_node_reference
+field_name: field_node_reference
+entity_type: message
+bundle: user_mention
+label: 'Node reference'
+description: ''
+required: true
+translatable: true
+default_value: { }
+default_value_callback: ''
+settings:
+ handler: 'default:node'
+ handler_settings:
+ target_bundles:
+ challenge: challenge
+ idea: idea
+ sort:
+ field: _none
+ auto_create: false
+ auto_create_bundle: challenge
+field_type: entity_reference
diff --git a/config/install/message.settings.yml b/config/install/message.settings.yml
index 409689cbf..2792ae819 100644
--- a/config/install/message.settings.yml
+++ b/config/install/message.settings.yml
@@ -3,7 +3,7 @@ purge_methods:
id: quota
weight: 0
data:
- quota: 400
+ quota: 10000
delete_on_entity_delete:
comment: comment
node: node
diff --git a/config/install/message.template.user_mention.yml b/config/install/message.template.user_mention.yml
new file mode 100644
index 000000000..e36d7b6d5
--- /dev/null
+++ b/config/install/message.template.user_mention.yml
@@ -0,0 +1,28 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - filter.format.basic_html
+ - filter.format.full_html
+template: user_mention
+label: 'User mention'
+description: ''
+text:
+ -
+ value: "
[message:field_comment_reference:entity:author] mentioned you in [message:field_node_reference:entity:title]
\r\n"
+ format: full_html
+ -
+ value: "You have a new mention on [site:name]
\r\n"
+ format: basic_html
+ -
+ value: "Content: [message:field_comment_reference:entity:author] has mentioned you on [message:field_node_reference:entity:title]. See what they say: [message:field_node_reference:entity:url]
\r\n"
+ format: basic_html
+ -
+ value: "[message:field_comment_reference:entity:author] mentioned [message:author:display-name] in [message:field_node_reference:entity:title]
\r\n"
+ format: full_html
+settings:
+ 'token options':
+ clear: false
+ 'token replace': true
+ purge_override: false
+ purge_methods: { }
diff --git a/config/install/rabbit_hole.behavior_settings.default.yml b/config/install/rabbit_hole.behavior_settings.default.yml
index 934dea579..4ab7f4787 100644
--- a/config/install/rabbit_hole.behavior_settings.default.yml
+++ b/config/install/rabbit_hole.behavior_settings.default.yml
@@ -2,7 +2,10 @@ langcode: en
status: true
dependencies: { }
id: default
+entity_type_id: null
+entity_id: null
action: display_page
allow_override: 1
redirect: ''
redirect_code: 0
+redirect_fallback_action: access_denied
diff --git a/config/install/rabbit_hole.behavior_settings.default_bundle.yml b/config/install/rabbit_hole.behavior_settings.default_bundle.yml
index febf95b92..d7d00684e 100644
--- a/config/install/rabbit_hole.behavior_settings.default_bundle.yml
+++ b/config/install/rabbit_hole.behavior_settings.default_bundle.yml
@@ -2,7 +2,10 @@ langcode: en
status: true
dependencies: { }
id: default_bundle
+entity_type_id: null
+entity_id: null
action: display_page
allow_override: 1
redirect: ''
redirect_code: 0
+redirect_fallback_action: access_denied
diff --git a/config/install/rabbit_hole.behavior_settings.group_type_idea.yml b/config/install/rabbit_hole.behavior_settings.group_type_idea.yml
index 9f7f42313..194475edc 100644
--- a/config/install/rabbit_hole.behavior_settings.group_type_idea.yml
+++ b/config/install/rabbit_hole.behavior_settings.group_type_idea.yml
@@ -1,8 +1,13 @@
langcode: en
status: true
-dependencies: { }
+dependencies:
+ config:
+ - group.type.idea
id: group_type_idea
+entity_type_id: group_type
+entity_id: idea
action: openideal_group_page_redirect
allow_override: 1
redirect: ''
redirect_code: 301
+redirect_fallback_action: access_denied
diff --git a/config/install/rabbit_hole.behavior_settings.node_type_article.yml b/config/install/rabbit_hole.behavior_settings.node_type_article.yml
index 5a3dc5e71..fab795e9f 100644
--- a/config/install/rabbit_hole.behavior_settings.node_type_article.yml
+++ b/config/install/rabbit_hole.behavior_settings.node_type_article.yml
@@ -1,8 +1,13 @@
langcode: en
status: true
-dependencies: { }
+dependencies:
+ config:
+ - node.type.article
id: node_type_article
+entity_type_id: node_type
+entity_id: article
action: display_page
allow_override: 1
redirect: ''
redirect_code: 301
+redirect_fallback_action: access_denied
diff --git a/config/install/rabbit_hole.behavior_settings.node_type_challenge.yml b/config/install/rabbit_hole.behavior_settings.node_type_challenge.yml
index 5651a51f8..f6037f4ab 100644
--- a/config/install/rabbit_hole.behavior_settings.node_type_challenge.yml
+++ b/config/install/rabbit_hole.behavior_settings.node_type_challenge.yml
@@ -1,8 +1,13 @@
langcode: en
status: true
-dependencies: { }
+dependencies:
+ config:
+ - node.type.challenge
id: node_type_challenge
+entity_type_id: node_type
+entity_id: challenge
action: display_page
allow_override: 0
redirect: ''
redirect_code: 301
+redirect_fallback_action: access_denied
diff --git a/config/install/rabbit_hole.behavior_settings.node_type_idea.yml b/config/install/rabbit_hole.behavior_settings.node_type_idea.yml
index 2eea2b80c..609148d33 100644
--- a/config/install/rabbit_hole.behavior_settings.node_type_idea.yml
+++ b/config/install/rabbit_hole.behavior_settings.node_type_idea.yml
@@ -1,8 +1,13 @@
langcode: en
status: true
-dependencies: { }
+dependencies:
+ config:
+ - node.type.idea
id: node_type_idea
+entity_type_id: node_type
+entity_id: idea
action: display_page
allow_override: 1
redirect: ''
redirect_code: 301
+redirect_fallback_action: access_denied
diff --git a/config/install/rabbit_hole.behavior_settings.node_type_page.yml b/config/install/rabbit_hole.behavior_settings.node_type_page.yml
index 627196245..4ae6bf815 100644
--- a/config/install/rabbit_hole.behavior_settings.node_type_page.yml
+++ b/config/install/rabbit_hole.behavior_settings.node_type_page.yml
@@ -1,8 +1,13 @@
langcode: en
status: true
-dependencies: { }
+dependencies:
+ config:
+ - node.type.page
id: node_type_page
+entity_type_id: node_type
+entity_id: page
action: display_page
allow_override: 1
redirect: ''
redirect_code: 301
+redirect_fallback_action: access_denied
diff --git a/config/install/rabbit_hole.behavior_settings.taxonomy_vocabulary_categories.yml b/config/install/rabbit_hole.behavior_settings.taxonomy_vocabulary_categories.yml
index d978ab5e5..ce9fa4cbd 100644
--- a/config/install/rabbit_hole.behavior_settings.taxonomy_vocabulary_categories.yml
+++ b/config/install/rabbit_hole.behavior_settings.taxonomy_vocabulary_categories.yml
@@ -1,8 +1,13 @@
langcode: en
status: true
-dependencies: { }
+dependencies:
+ config:
+ - taxonomy.vocabulary.categories
id: taxonomy_vocabulary_categories
+entity_type_id: taxonomy_vocabulary
+entity_id: categories
action: display_page
allow_override: 0
redirect: ''
redirect_code: 301
+redirect_fallback_action: access_denied
diff --git a/config/install/rabbit_hole.behavior_settings.user.yml b/config/install/rabbit_hole.behavior_settings.user.yml
deleted file mode 100644
index e21ad5bc3..000000000
--- a/config/install/rabbit_hole.behavior_settings.user.yml
+++ /dev/null
@@ -1,8 +0,0 @@
-langcode: en
-status: true
-dependencies: { }
-id: user
-action: page_redirect
-allow_override: 1
-redirect: /user/login
-redirect_code: 302
diff --git a/config/install/rules.reaction.create_message_after_mentioning_user.yml b/config/install/rules.reaction.create_message_after_mentioning_user.yml
new file mode 100644
index 000000000..83757585a
--- /dev/null
+++ b/config/install/rules.reaction.create_message_after_mentioning_user.yml
@@ -0,0 +1,56 @@
+langcode: en
+status: true
+dependencies: { }
+id: create_message_after_mentioning_user
+label: 'Create a message after mentioning user'
+events:
+ -
+ event_name: openideal_user.user_mention
+description: ''
+tags: { }
+config_version: '3'
+expression:
+ id: rules_rule
+ uuid: 01d20fdd-19f2-4e3c-adfd-45332d13c5e8
+ weight: 0
+ conditions:
+ id: rules_and
+ uuid: 564f446b-dd81-4070-95c7-07a55021ba46
+ weight: 0
+ conditions:
+ -
+ id: rules_condition
+ uuid: 7fcb2dcc-c1eb-42ac-8b64-73029e7b65ce
+ weight: 0
+ context_values:
+ operation: '=='
+ value: '1'
+ context_mapping:
+ data: comment.entity_id.entity.status.value
+ context_processors:
+ operation:
+ rules_tokens: { }
+ value:
+ rules_tokens: { }
+ provides_mapping: { }
+ condition_id: rules_data_comparison
+ negate: false
+ actions:
+ id: rules_action_set
+ uuid: 4c6fadd2-58a4-421b-a312-43c59a6f7222
+ weight: 0
+ actions:
+ -
+ id: rules_action
+ uuid: 87e5f07f-7981-4f1f-ad17-29a70e3809a1
+ weight: 0
+ context_values:
+ template: user_mention
+ context_mapping:
+ referenced_entity: comment
+ user: user
+ context_processors:
+ template:
+ rules_tokens: { }
+ provides_mapping: { }
+ action_id: openideal_message_action
diff --git a/config/install/rules.reaction.earn_points_for_voting_a_idea.yml b/config/install/rules.reaction.earn_points_for_voting_a_idea.yml
index 3195a44b2..efed36496 100644
--- a/config/install/rules.reaction.earn_points_for_voting_a_idea.yml
+++ b/config/install/rules.reaction.earn_points_for_voting_a_idea.yml
@@ -22,8 +22,25 @@ expression:
conditions:
-
id: rules_condition
- uuid: e42d9597-8b68-4c0f-8104-82cf94775eed
+ uuid: 64e03746-3bac-4912-8821-0f309c585a53
weight: -50
+ context_values:
+ operation: '=='
+ value: node
+ context_mapping:
+ data: vote.entity_type.value
+ context_processors:
+ operation:
+ rules_tokens: { }
+ value:
+ rules_tokens: { }
+ provides_mapping: { }
+ condition_id: rules_data_comparison
+ negate: false
+ -
+ id: rules_condition
+ uuid: e42d9597-8b68-4c0f-8104-82cf94775eed
+ weight: -49
context_values:
operation: '=='
value: idea
@@ -40,7 +57,7 @@ expression:
-
id: rules_condition
uuid: f8e70bdc-3ebd-416a-88c7-8d51fea56a84
- weight: -49
+ weight: -48
context_values: { }
context_mapping:
entity: vote
@@ -51,7 +68,7 @@ expression:
-
id: rules_condition
uuid: 077a555d-78ba-4e37-bf84-5bfb1bafeed6
- weight: -48
+ weight: -47
context_values:
operation: '=='
context_mapping:
diff --git a/config/install/views.view.ideas.yml b/config/install/views.view.ideas.yml
index 3f1e36c19..944ef9036 100644
--- a/config/install/views.view.ideas.yml
+++ b/config/install/views.view.ideas.yml
@@ -371,69 +371,6 @@ display:
separator: ', '
field_api_classes: false
plugin_id: field
- field_idea_phase:
- id: field_idea_phase
- table: node__field_idea_phase
- field: field_idea_phase
- relationship: none
- group_type: group
- admin_label: ''
- label: ''
- exclude: false
- alter:
- alter_text: false
- text: ''
- make_link: false
- path: ''
- absolute: false
- external: false
- replace_spaces: false
- path_case: none
- trim_whitespace: false
- alt: ''
- rel: ''
- link_class: ''
- prefix: ''
- suffix: ''
- target: ''
- nl2br: false
- max_length: 0
- word_boundary: true
- ellipsis: true
- more_link: false
- more_link_text: ''
- more_link_path: ''
- strip_tags: false
- trim: false
- preserve_tags: ''
- html: false
- element_type: ''
- element_class: ''
- element_label_type: ''
- element_label_class: ''
- element_label_colon: false
- element_wrapper_type: ''
- element_wrapper_class: ''
- element_default_classes: true
- empty: ''
- hide_empty: false
- empty_zero: false
- hide_alter_empty: true
- click_sort_column: target_id
- type: entity_reference_label
- settings:
- link: false
- group_column: target_id
- group_columns: { }
- group_rows: true
- delta_limit: 0
- delta_offset: 0
- delta_reversed: false
- delta_first_last: false
- multi_type: separator
- separator: ', '
- field_api_classes: false
- plugin_id: field
field_idea_tags:
id: field_idea_tags
table: node__field_idea_tags
@@ -1792,3 +1729,393 @@ display:
- 'user.node_grants:view'
- user.permissions
tags: { }
+ ideas_autocomplete_entity_reference:
+ display_plugin: entity_reference
+ id: ideas_autocomplete_entity_reference
+ display_title: 'Ideas autocomplete (Entity Reference)'
+ position: 1
+ display_options:
+ display_extenders: { }
+ filters:
+ type:
+ id: type
+ table: node_field_data
+ field: type
+ value:
+ idea: idea
+ entity_type: node
+ entity_field: type
+ plugin_id: bundle
+ expose:
+ operator_limit_selection: false
+ operator_list: { }
+ group: 1
+ moderation_state_1:
+ id: moderation_state_1
+ table: node_field_data
+ field: moderation_state
+ relationship: none
+ group_type: group
+ admin_label: ''
+ operator: 'not empty'
+ value: { }
+ group: 1
+ exposed: false
+ expose:
+ operator_id: ''
+ label: ''
+ description: ''
+ use_operator: false
+ operator: ''
+ operator_limit_selection: false
+ operator_list: { }
+ identifier: ''
+ required: false
+ remember: false
+ multiple: false
+ remember_roles:
+ authenticated: authenticated
+ reduce: false
+ is_grouped: false
+ group_info:
+ label: ''
+ description: ''
+ identifier: ''
+ optional: true
+ widget: select
+ multiple: false
+ remember: false
+ default_group: All
+ default_group_multiple: { }
+ group_items: { }
+ entity_type: node
+ plugin_id: moderation_state_filter
+ defaults:
+ filters: false
+ filter_groups: false
+ fields: false
+ relationships: false
+ sorts: false
+ css_class: false
+ arguments: false
+ filter_groups:
+ operator: AND
+ groups:
+ 1: AND
+ fields:
+ title:
+ id: title
+ table: node_field_data
+ field: title
+ relationship: none
+ group_type: group
+ admin_label: ''
+ label: ''
+ exclude: false
+ alter:
+ alter_text: false
+ text: ''
+ make_link: false
+ path: ''
+ absolute: false
+ external: false
+ replace_spaces: false
+ path_case: none
+ trim_whitespace: false
+ alt: ''
+ rel: ''
+ link_class: ''
+ prefix: ''
+ suffix: ''
+ target: ''
+ nl2br: false
+ max_length: 0
+ word_boundary: false
+ ellipsis: false
+ more_link: false
+ more_link_text: ''
+ more_link_path: ''
+ strip_tags: false
+ trim: false
+ preserve_tags: ''
+ html: false
+ element_type: ''
+ element_class: ''
+ element_label_type: ''
+ element_label_class: ''
+ element_label_colon: false
+ element_wrapper_type: ''
+ element_wrapper_class: ''
+ element_default_classes: true
+ empty: ''
+ hide_empty: false
+ empty_zero: false
+ hide_alter_empty: true
+ click_sort_column: value
+ type: string
+ settings:
+ link_to_entity: false
+ group_column: value
+ group_columns: { }
+ group_rows: true
+ delta_limit: 0
+ delta_offset: 0
+ delta_reversed: false
+ delta_first_last: false
+ multi_type: separator
+ separator: ', '
+ field_api_classes: false
+ entity_type: node
+ entity_field: title
+ plugin_id: field
+ body:
+ id: body
+ table: node__body
+ field: body
+ relationship: none
+ group_type: group
+ admin_label: ''
+ label: ''
+ exclude: true
+ alter:
+ alter_text: false
+ text: ''
+ make_link: false
+ path: ''
+ absolute: false
+ external: false
+ replace_spaces: false
+ path_case: none
+ trim_whitespace: false
+ alt: ''
+ rel: ''
+ link_class: ''
+ prefix: ''
+ suffix: ''
+ target: ''
+ nl2br: false
+ max_length: 0
+ word_boundary: true
+ ellipsis: true
+ more_link: false
+ more_link_text: ''
+ more_link_path: ''
+ strip_tags: false
+ trim: false
+ preserve_tags: ''
+ html: false
+ element_type: ''
+ element_class: ''
+ element_label_type: ''
+ element_label_class: ''
+ element_label_colon: false
+ element_wrapper_type: ''
+ element_wrapper_class: ''
+ element_default_classes: true
+ empty: ''
+ hide_empty: false
+ empty_zero: false
+ hide_alter_empty: true
+ click_sort_column: value
+ type: text_summary_or_trimmed
+ settings:
+ trim_length: 600
+ group_column: value
+ group_columns: { }
+ group_rows: true
+ delta_limit: 0
+ delta_offset: 0
+ delta_reversed: false
+ delta_first_last: false
+ multi_type: separator
+ separator: ', '
+ field_api_classes: false
+ plugin_id: field
+ field_challenge:
+ id: field_challenge
+ table: node__field_challenge
+ field: field_challenge
+ relationship: none
+ group_type: group
+ admin_label: ''
+ label: ''
+ exclude: true
+ alter:
+ alter_text: false
+ text: ''
+ make_link: false
+ path: ''
+ absolute: false
+ external: false
+ replace_spaces: false
+ path_case: none
+ trim_whitespace: false
+ alt: ''
+ rel: ''
+ link_class: ''
+ prefix: ''
+ suffix: ''
+ target: ''
+ nl2br: false
+ max_length: 0
+ word_boundary: true
+ ellipsis: true
+ more_link: false
+ more_link_text: ''
+ more_link_path: ''
+ strip_tags: false
+ trim: false
+ preserve_tags: ''
+ html: false
+ element_type: ''
+ element_class: ''
+ element_label_type: ''
+ element_label_class: ''
+ element_label_colon: false
+ element_wrapper_type: ''
+ element_wrapper_class: ''
+ element_default_classes: true
+ empty: ''
+ hide_empty: false
+ empty_zero: false
+ hide_alter_empty: true
+ click_sort_column: target_id
+ type: entity_reference_label
+ settings:
+ link: true
+ group_column: target_id
+ group_columns: { }
+ group_rows: true
+ delta_limit: 0
+ delta_offset: 0
+ delta_reversed: false
+ delta_first_last: false
+ multi_type: separator
+ separator: ', '
+ field_api_classes: false
+ plugin_id: field
+ uid:
+ id: uid
+ table: node_field_data
+ field: uid
+ relationship: none
+ group_type: group
+ admin_label: ''
+ label: ''
+ exclude: true
+ alter:
+ alter_text: false
+ text: ''
+ make_link: false
+ path: ''
+ absolute: false
+ external: false
+ replace_spaces: false
+ path_case: none
+ trim_whitespace: false
+ alt: ''
+ rel: ''
+ link_class: ''
+ prefix: ''
+ suffix: ''
+ target: ''
+ nl2br: false
+ max_length: 0
+ word_boundary: true
+ ellipsis: true
+ more_link: false
+ more_link_text: ''
+ more_link_path: ''
+ strip_tags: false
+ trim: false
+ preserve_tags: ''
+ html: false
+ element_type: ''
+ element_class: ''
+ element_label_type: ''
+ element_label_class: ''
+ element_label_colon: false
+ element_wrapper_type: ''
+ element_wrapper_class: ''
+ element_default_classes: true
+ empty: ''
+ hide_empty: false
+ empty_zero: false
+ hide_alter_empty: true
+ click_sort_column: target_id
+ type: entity_reference_label
+ settings:
+ link: true
+ group_column: target_id
+ group_columns: { }
+ group_rows: true
+ delta_limit: 0
+ delta_offset: 0
+ delta_reversed: false
+ delta_first_last: false
+ multi_type: separator
+ separator: ', '
+ field_api_classes: false
+ entity_type: node
+ entity_field: uid
+ plugin_id: field
+ relationships:
+ uid:
+ id: uid
+ table: node_field_data
+ field: uid
+ relationship: none
+ group_type: group
+ admin_label: author
+ required: true
+ entity_type: node
+ entity_field: uid
+ plugin_id: standard
+ sorts:
+ created:
+ id: created
+ table: node_field_data
+ field: created
+ relationship: none
+ group_type: group
+ admin_label: ''
+ order: DESC
+ exposed: true
+ expose:
+ label: Date
+ granularity: hour
+ entity_type: node
+ entity_field: created
+ plugin_id: date
+ css_class: 'ideas-teaser-view-page teaser-view-mode teaser-view-mode--teaser'
+ display_description: ''
+ style:
+ type: entity_reference
+ options:
+ search_fields:
+ title: title
+ body: body
+ field_challenge: '0'
+ uid: '0'
+ row:
+ type: entity_reference
+ options:
+ default_field_elements: false
+ inline:
+ title: title
+ separator: '-'
+ hide_empty: false
+ arguments: { }
+ cache_metadata:
+ max-age: -1
+ contexts:
+ - 'languages:language_content'
+ - 'languages:language_interface'
+ - 'url.query_args:sort_by'
+ - 'url.query_args:sort_order'
+ - 'user.node_grants:view'
+ - user.permissions
+ tags:
+ - 'config:field.storage.node.body'
+ - 'config:field.storage.node.field_challenge'
+ - 'config:workflow_list'
diff --git a/config/install/views.view.public_activity.yml b/config/install/views.view.public_activity.yml
index e328cfe05..bf711f2c5 100644
--- a/config/install/views.view.public_activity.yml
+++ b/config/install/views.view.public_activity.yml
@@ -7,6 +7,7 @@ dependencies:
- field.storage.message.field_user_reference
- flag.flag.follow
- message.template.created_reply_on_comment
+ - message.template.user_mention
module:
- comment
- flag
@@ -14,7 +15,7 @@ dependencies:
- node
- user
id: public_activity
-label: 'Public activity'
+label: 'Activity feed'
module: views
description: ''
tag: ''
@@ -587,6 +588,7 @@ display:
filter_groups: false
arguments: false
cache: false
+ group_by: false
relationships:
field_node_reference:
id: field_node_reference
@@ -764,15 +766,105 @@ display:
entity_type: comment
entity_field: uid
plugin_id: numeric
+ template_1:
+ id: template_1
+ table: message_field_data
+ field: template
+ relationship: none
+ group_type: group
+ admin_label: ''
+ operator: in
+ value:
+ user_mention: user_mention
+ group: 3
+ exposed: false
+ expose:
+ operator_id: ''
+ label: ''
+ description: ''
+ use_operator: false
+ operator: ''
+ operator_limit_selection: false
+ operator_list: { }
+ identifier: ''
+ required: false
+ remember: false
+ multiple: false
+ remember_roles:
+ authenticated: authenticated
+ reduce: false
+ is_grouped: false
+ group_info:
+ label: ''
+ description: ''
+ identifier: ''
+ optional: true
+ widget: select
+ multiple: false
+ remember: false
+ default_group: All
+ default_group_multiple: { }
+ group_items: { }
+ entity_type: message
+ entity_field: template
+ plugin_id: bundle
+ uid_2:
+ id: uid_2
+ table: message_field_data
+ field: uid
+ relationship: none
+ group_type: group
+ admin_label: ''
+ operator: '='
+ value:
+ min: ''
+ max: ''
+ value: '[user-page-id]'
+ group: 3
+ exposed: false
+ expose:
+ operator_id: ''
+ label: ''
+ description: ''
+ use_operator: false
+ operator: ''
+ operator_limit_selection: false
+ operator_list: { }
+ identifier: ''
+ required: false
+ remember: false
+ multiple: false
+ remember_roles:
+ authenticated: authenticated
+ placeholder: ''
+ min_placeholder: ''
+ max_placeholder: ''
+ is_grouped: false
+ group_info:
+ label: ''
+ description: ''
+ identifier: ''
+ optional: true
+ widget: select
+ multiple: false
+ remember: false
+ default_group: All
+ default_group_multiple: { }
+ group_items: { }
+ entity_type: message
+ entity_field: uid
+ plugin_id: numeric
filter_groups:
operator: OR
groups:
1: OR
2: AND
+ 3: AND
arguments: { }
cache:
type: none
options: { }
+ group_by: true
cache_metadata:
max-age: -1
contexts:
@@ -792,6 +884,57 @@ display:
display_extenders: { }
block_description: 'Public activity'
display_description: ''
+ filters:
+ template:
+ id: template
+ table: message_field_data
+ field: template
+ relationship: none
+ group_type: group
+ admin_label: ''
+ operator: 'not in'
+ value:
+ created_reply_on_comment: created_reply_on_comment
+ user_mention: user_mention
+ group: 1
+ exposed: false
+ expose:
+ operator_id: ''
+ label: ''
+ description: ''
+ use_operator: false
+ operator: ''
+ operator_limit_selection: false
+ operator_list: { }
+ identifier: ''
+ required: false
+ remember: false
+ multiple: false
+ remember_roles:
+ authenticated: authenticated
+ reduce: false
+ is_grouped: false
+ group_info:
+ label: ''
+ description: ''
+ identifier: ''
+ optional: true
+ widget: select
+ multiple: false
+ remember: false
+ default_group: All
+ default_group_multiple: { }
+ group_items: { }
+ entity_type: message
+ entity_field: template
+ plugin_id: bundle
+ defaults:
+ filters: false
+ filter_groups: false
+ filter_groups:
+ operator: AND
+ groups:
+ 1: AND
cache_metadata:
max-age: -1
contexts:
diff --git a/idea.info.yml b/idea.info.yml
index 0c1de1836..c01b90a6e 100644
--- a/idea.info.yml
+++ b/idea.info.yml
@@ -121,6 +121,7 @@ dependencies:
- openideal_slideshow:openideal_slideshow
- openideal_comment:openideal_comment
- openideal_footer:openideal_footer
+ - openideal_login:openideal_login
- openideal_statistics:openideal_statistics
themes:
diff --git a/modules/openideal_challenge/css/style.css b/modules/openideal_challenge/css/style.css
index b2b8c934d..d41108f70 100644
--- a/modules/openideal_challenge/css/style.css
+++ b/modules/openideal_challenge/css/style.css
@@ -3,37 +3,3 @@
color: #595959;
font-size: 0.95em;
}
-
-input[type="date"] {
- position: relative;
- width: 145px;
- height: 30px;
- color: white;
- margin-right: 5px;
-}
-
-.field--type-created .container-inline {
- display: flex;
-}
-
-input[type="date"]:before {
- position: absolute;
- content: attr(data-date);
- color: #595959;
- display: inline-block;
-}
-
-input[type="date"]::-webkit-datetime-edit,
-input[type="date"]::-webkit-inner-spin-button,
-input[type="date"]::-webkit-clear-button {
- display: none;
-}
-
-input[type="date"]::-webkit-calendar-picker-indicator {
- position: absolute;
- top: 50%;
- transform: translateY(-50%);
- right: 0;
- color: black;
- opacity: 1;
-}
diff --git a/modules/openideal_challenge/js/schedule.js b/modules/openideal_challenge/js/schedule.js
index b077b7882..640fe9c99 100644
--- a/modules/openideal_challenge/js/schedule.js
+++ b/modules/openideal_challenge/js/schedule.js
@@ -18,7 +18,6 @@
*/
function generateDefaultDate(date) {
if (!(date instanceof Date)) {
- // @Todo: throw error?
return;
}
var language = drupalSettings.path.currentLanguage;
@@ -47,24 +46,5 @@
})
}
};
-
- /**
- * Change html5 date input view format.
- *
- * @type {Drupal~behavior}
- *
- * @prop {Drupal~behaviorAttach} attach
- * Attach dynamic format change to date.
- */
- Drupal.behaviors.openidealChallengeHMTL5Date = {
- attach: function (context, settings) {
- $('input[type="date"]').once('openideal_challenge_html5_date').each(function () {
- $(this).on('change', function () {
- var attribute = !this.value ? 'dd/mm/yyyy' : generateDefaultDate(new Date(this.value));
- this.setAttribute('data-date', attribute);
- }).trigger("change")
- })
- }
- }
}
)(jQuery, Drupal, drupalSettings);
diff --git a/modules/openideal_challenge/openideal_challenge.module b/modules/openideal_challenge/openideal_challenge.module
index b1f60f45a..e479214c4 100644
--- a/modules/openideal_challenge/openideal_challenge.module
+++ b/modules/openideal_challenge/openideal_challenge.module
@@ -33,7 +33,6 @@ function openideal_challenge_form_node_form_alter(&$form, FormStateInterface $fo
$value = &$form['created']['widget'][0]['value'];
$date_format = DateFormat::load('openideal_date')->getPattern();
$value['#description'] = t('Note that scheduling is triggered using the server time.
Current server time is: %format.
', ['%format' => Datetime::formatExample($date_format)]);
- $form['#attached']['library'][] = 'openideal_challenge/openideal_challenge.schedule';
}
}
diff --git a/modules/openideal_content/openideal_content.module b/modules/openideal_content/openideal_content.module
index c1df177e2..c68fc1c96 100644
--- a/modules/openideal_content/openideal_content.module
+++ b/modules/openideal_content/openideal_content.module
@@ -5,6 +5,8 @@
* Contains openideal_content.module.
*/
+use Drupal\Core\Ajax\AjaxResponse;
+use Drupal\Core\Ajax\InsertCommand;
use Drupal\Core\Entity\EntityInterface;
use Drupal\Core\Form\FormStateInterface;
use Drupal\Core\Url;
@@ -21,6 +23,46 @@ function openideal_content_link_alter(&$variables) {
}
}
+/**
+ * Implements hook_form_BASE_FORM_ID_alter().
+ */
+function openideal_content_form_vote_form_alter(&$form, FormStateInterface $form_state, $form_id) {
+ $entity = $form_state->getFormObject()->getEntity();
+ if (isset($form['type']['#ajax']['callback']) && $entity->entity_type->value == 'node') {
+ $form['type']['#ajax']['callback'] = '_openideal_content_vote_ajax_submit';
+ }
+}
+
+/**
+ * Ajax submit handler.
+ *
+ * Replace submit handler from voting api, and set the
+ * voting count into hidden field for FE purposes.
+ */
+function _openideal_content_vote_ajax_submit(&$form, FormStateInterface $form_state) {
+ // Todo: change the button label here.
+ // @see Drupal.behaviors.openidealThemeLikeWidgetLabel
+ $form_state->getFormObject()
+ ->submitForm($form, $form_state);
+ $callback_object = $form_state->getFormObject();
+ $field_items = $form_state->get('field_items');
+ $settings = $form_state->get('formatter_settings') + $field_items->getSettings();
+ $results = \Drupal::service('votingapi_reaction.manager')->getResults($callback_object->getEntity(), $settings);
+ $result = array_sum(array_column($results, 'vote_sum'));
+ $response = new AjaxResponse();
+
+ // Form insert.
+ $html = \Drupal::service('renderer')->renderRoot($form);
+ $response->addCommand(new InsertCommand(NULL, $html));
+ $response->setAttachments($form['#attached']);
+
+ // Votes update.
+ $content = '' . $result . '
';
+ $response->addCommand(new InsertCommand('[data-openideal-vote="like_tag"]', $content));
+
+ return $response;
+}
+
/**
* Implements hook_views_query_alter().
*/
diff --git a/modules/openideal_idea/js/autocomplete.js b/modules/openideal_idea/js/autocomplete.js
new file mode 100644
index 000000000..3ab7d1626
--- /dev/null
+++ b/modules/openideal_idea/js/autocomplete.js
@@ -0,0 +1,29 @@
+/**
+ * @file
+ * Autocomplete based on jQuery UI.
+ */
+
+(function ($, Drupal, window) {
+ 'use strict';
+
+ /**
+ * Attaches the autocomplete behavior to all required fields.
+ *
+ * @type {Drupal~behavior}
+ *
+ * @prop {Drupal~behaviorAttach} attach
+ * Attaches the autocomplete behaviors.
+ */
+ Drupal.behaviors.openidealIdeaAutocomplete = {
+ attach: function (context, settings) {
+ var $autocomplete = $(context).find('.field--name-title input.form-autocomplete').once('openideal_idea_autocomplete');
+
+ if ($autocomplete.length) {
+ $autocomplete.on('autocompleteselect', function (event, ui) {
+ window.location.replace(ui.item.url);
+ })
+ }
+ }
+ }
+
+})(jQuery, Drupal, window);
diff --git a/modules/openideal_idea/openideal_idea.libraries.yml b/modules/openideal_idea/openideal_idea.libraries.yml
new file mode 100644
index 000000000..7698afb04
--- /dev/null
+++ b/modules/openideal_idea/openideal_idea.libraries.yml
@@ -0,0 +1,6 @@
+autocomplete:
+ js:
+ js/autocomplete.js: {}
+ dependencies:
+ - core/jquery
+ - core/jquery.once
diff --git a/modules/openideal_idea/openideal_idea.module b/modules/openideal_idea/openideal_idea.module
index ccf3f3c79..b5d71ceb2 100644
--- a/modules/openideal_idea/openideal_idea.module
+++ b/modules/openideal_idea/openideal_idea.module
@@ -76,6 +76,12 @@ function openideal_idea_form_node_idea_form_alter(&$form, FormStateInterface $fo
$form['field_challenge']['widget']['#default_value'] = $challenge_id;
}
}
+
+ $form['#attached']['library'][] = 'openideal_idea/autocomplete';
+
+ if (isset($form['title']['widget'][0]['value'])) {
+ $form['title']['widget'][0]['value']['#autocomplete_route_name'] = 'openideal_idea.ideas_autocomplete';
+ }
}
/**
diff --git a/modules/openideal_idea/openideal_idea.routing.yml b/modules/openideal_idea/openideal_idea.routing.yml
index 8eaa8a5a5..3eb62db98 100644
--- a/modules/openideal_idea/openideal_idea.routing.yml
+++ b/modules/openideal_idea/openideal_idea.routing.yml
@@ -7,3 +7,10 @@ openideal_idea.openideal_idea_score_config_form:
_permission: 'access to configuration forms'
options:
_admin_route: TRUE
+
+openideal_idea.ideas_autocomplete:
+ path: '/idea/autocomplete'
+ defaults:
+ _controller: '\Drupal\openideal_idea\Controller\IdeasAutocompleteController::autocomplete'
+ requirements:
+ _permission: 'access content'
diff --git a/modules/openideal_idea/src/Controller/IdeasAutocompleteController.php b/modules/openideal_idea/src/Controller/IdeasAutocompleteController.php
new file mode 100644
index 000000000..ac6d74768
--- /dev/null
+++ b/modules/openideal_idea/src/Controller/IdeasAutocompleteController.php
@@ -0,0 +1,98 @@
+selectionManager = $selection_manager;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public static function create(ContainerInterface $container) {
+ return new static(
+ $container->get('plugin.manager.entity_reference_selection')
+ );
+ }
+
+ /**
+ * Retrieves suggestions for ides duplication.
+ *
+ * @param \Symfony\Component\HttpFoundation\Request $request
+ * The current request.
+ *
+ * @return \Symfony\Component\HttpFoundation\JsonResponse
+ * A JSON response containing autocomplete suggestions.
+ */
+ public function autocomplete(Request $request) {
+ $q = $request->query->get('q');
+ $matches = [];
+
+ if (!isset($q)) {
+ return new JsonResponse($matches);
+ }
+
+ $matches = [];
+
+ $selection_settings = [
+ 'view' =>
+ [
+ 'view_name' => 'ideas',
+ 'display_name' => 'ideas_autocomplete_entity_reference',
+ 'arguments' =>
+ [],
+ ],
+ 'match_operator' => 'CONTAINS',
+ 'match_limit' => self::LIMIT,
+ 'target_type' => 'node',
+ 'handler' => 'views',
+ ];
+
+ // Need to user selection manager instead of entity.autocomplete_matcher
+ // because of in such way we have more control
+ // and can set url for the redirection.
+ $handler = $this->selectionManager->getInstance($selection_settings);
+
+ $entity_labels = $handler->getReferenceableEntities($q, 'CONTAINS', self::LIMIT);
+
+ foreach ($entity_labels as $values) {
+ foreach ($values as $entity_id => $label) {
+ $node_url = Url::fromRoute('entity.node.canonical', ['node' => $entity_id], ['query' => ['suggested-idea' => TRUE]])->toString();
+ $matches[] = ['value' => $label, 'label' => $label, 'url' => $node_url];
+ }
+ }
+
+ return new JsonResponse($matches);
+ }
+
+}
diff --git a/modules/openideal_login/config/install/block_content.type.login.yml b/modules/openideal_login/config/install/block_content.type.login.yml
new file mode 100644
index 000000000..ea681aa27
--- /dev/null
+++ b/modules/openideal_login/config/install/block_content.type.login.yml
@@ -0,0 +1,7 @@
+langcode: en
+status: true
+dependencies: { }
+id: login
+label: 'Login block'
+revision: 0
+description: ''
diff --git a/modules/openideal_login/config/install/core.entity_form_display.block_content.login.default.yml b/modules/openideal_login/config/install/core.entity_form_display.block_content.login.default.yml
new file mode 100644
index 000000000..66ec368dd
--- /dev/null
+++ b/modules/openideal_login/config/install/core.entity_form_display.block_content.login.default.yml
@@ -0,0 +1,43 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - block_content.type.login
+ - field.field.block_content.login.body
+ - field.field.block_content.login.field_image
+ - image.style.thumbnail
+ module:
+ - image
+ - text
+id: block_content.login.default
+targetEntityType: block_content
+bundle: login
+mode: default
+content:
+ body:
+ type: text_textarea_with_summary
+ weight: 26
+ settings:
+ rows: 9
+ summary_rows: 3
+ placeholder: ''
+ show_summary: false
+ third_party_settings: { }
+ region: content
+ field_image:
+ weight: 27
+ settings:
+ progress_indicator: throbber
+ preview_image_style: thumbnail
+ third_party_settings: { }
+ type: image_image
+ region: content
+ info:
+ type: string_textfield
+ weight: -5
+ region: content
+ settings:
+ size: 60
+ placeholder: ''
+ third_party_settings: { }
+hidden: { }
diff --git a/modules/openideal_login/config/install/field.field.block_content.login.body.yml b/modules/openideal_login/config/install/field.field.block_content.login.body.yml
new file mode 100644
index 000000000..6018f4d5a
--- /dev/null
+++ b/modules/openideal_login/config/install/field.field.block_content.login.body.yml
@@ -0,0 +1,22 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - block_content.type.login
+ - field.storage.block_content.body
+ module:
+ - text
+id: block_content.login.body
+field_name: body
+entity_type: block_content
+bundle: login
+label: Body
+description: ''
+required: false
+translatable: true
+default_value: { }
+default_value_callback: ''
+settings:
+ display_summary: false
+ required_summary: false
+field_type: text_with_summary
diff --git a/modules/openideal_login/config/install/field.field.block_content.login.field_image.yml b/modules/openideal_login/config/install/field.field.block_content.login.field_image.yml
new file mode 100644
index 000000000..00932c7a1
--- /dev/null
+++ b/modules/openideal_login/config/install/field.field.block_content.login.field_image.yml
@@ -0,0 +1,37 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - block_content.type.login
+ - field.storage.block_content.field_image
+ module:
+ - image
+id: block_content.login.field_image
+field_name: field_image
+entity_type: block_content
+bundle: login
+label: Image
+description: ''
+required: false
+translatable: false
+default_value: { }
+default_value_callback: ''
+settings:
+ file_directory: '[date:custom:Y]-[date:custom:m]'
+ file_extensions: 'png gif jpg jpeg'
+ max_filesize: ''
+ max_resolution: ''
+ min_resolution: ''
+ alt_field: true
+ alt_field_required: false
+ title_field: false
+ title_field_required: false
+ default_image:
+ uuid: ''
+ alt: ''
+ title: ''
+ width: null
+ height: null
+ handler: 'default:file'
+ handler_settings: { }
+field_type: image
diff --git a/modules/openideal_login/config/install/field.storage.block_content.field_image.yml b/modules/openideal_login/config/install/field.storage.block_content.field_image.yml
new file mode 100644
index 000000000..6e0ba2464
--- /dev/null
+++ b/modules/openideal_login/config/install/field.storage.block_content.field_image.yml
@@ -0,0 +1,29 @@
+langcode: en
+status: true
+dependencies:
+ module:
+ - block_content
+ - file
+ - image
+id: block_content.field_image
+field_name: field_image
+entity_type: block_content
+type: image
+settings:
+ uri_scheme: public
+ default_image:
+ uuid: ''
+ alt: ''
+ title: ''
+ width: null
+ height: null
+ target_type: file
+ display_field: false
+ display_default: false
+module: image
+locked: false
+cardinality: 1
+translatable: true
+indexes: { }
+persist_with_no_fields: false
+custom_storage: false
diff --git a/modules/openideal_login/config/optional/core.entity_view_display.block_content.login.default.yml b/modules/openideal_login/config/optional/core.entity_view_display.block_content.login.default.yml
new file mode 100644
index 000000000..cb66c9b2e
--- /dev/null
+++ b/modules/openideal_login/config/optional/core.entity_view_display.block_content.login.default.yml
@@ -0,0 +1,93 @@
+langcode: en
+status: true
+dependencies:
+ config:
+ - block_content.type.login
+ - field.field.block_content.login.body
+ - field.field.block_content.login.field_image
+ module:
+ - image
+ - layout_builder
+ - text
+ theme:
+ - openideal_theme
+third_party_settings:
+ layout_builder:
+ allow_custom: false
+ enabled: true
+ sections:
+ -
+ layout_id: openideal_two_columns_teaser
+ layout_settings:
+ label: ''
+ main_class: user-login-form--container--right__text
+ layout_builder_styles_style:
+ author: 0
+ user_compact: 0
+ user_profile: 0
+ user_profile_top: 0
+ components:
+ 2f0d2b45-54c7-4ba5-ba86-65dc9505679e:
+ uuid: 2f0d2b45-54c7-4ba5-ba86-65dc9505679e
+ region: first
+ configuration:
+ label_display: '0'
+ context_mapping:
+ entity: layout_builder.entity
+ id: 'field_block:block_content:login:body'
+ formatter:
+ label: hidden
+ type: text_default
+ settings:
+ offset: 0
+ limit: 0
+ third_party_settings: { }
+ additional: { }
+ weight: 0
+ 1e4a8db3-8563-465d-bdaa-672eaf9eac1f:
+ uuid: 1e4a8db3-8563-465d-bdaa-672eaf9eac1f
+ region: second
+ configuration:
+ id: 'field_block:block_content:login:field_image'
+ label: Image
+ provider: layout_builder
+ label_display: '0'
+ formatter:
+ label: hidden
+ type: image
+ settings:
+ image_style: ''
+ image_link: ''
+ third_party_settings: { }
+ context_mapping:
+ entity: layout_builder.entity
+ view_mode: view_mode
+ additional: { }
+ weight: 1
+ third_party_settings: { }
+id: block_content.login.default
+targetEntityType: block_content
+bundle: login
+mode: default
+content:
+ body:
+ label: hidden
+ type: text_default
+ weight: 0
+ settings:
+ offset: 0
+ limit: 0
+ third_party_settings: { }
+ region: content
+ field_image:
+ weight: 1
+ label: above
+ settings:
+ image_style: ''
+ image_link: ''
+ offset: 0
+ limit: 0
+ third_party_settings: { }
+ type: image
+ region: content
+hidden: { }
diff --git a/modules/openideal_login/content/block_content/9e7546b2-92f2-4792-8710-4995158ee7ed.yml b/modules/openideal_login/content/block_content/9e7546b2-92f2-4792-8710-4995158ee7ed.yml
new file mode 100644
index 000000000..406b94186
--- /dev/null
+++ b/modules/openideal_login/content/block_content/9e7546b2-92f2-4792-8710-4995158ee7ed.yml
@@ -0,0 +1,33 @@
+_meta:
+ version: '1.0'
+ entity_type: block_content
+ uuid: 9e7546b2-92f2-4792-8710-4995158ee7ed
+ bundle: login
+ default_langcode: en
+ depends:
+ 67ed572b-6083-4b52-91fa-e2202dc60fba: file
+default:
+ status:
+ -
+ value: true
+ info:
+ -
+ value: login
+ reusable:
+ -
+ value: true
+ revision_translation_affected:
+ -
+ value: true
+ body:
+ -
+ value: "Ideas Inspire Innovation
\r\n\r\n\r\n\t- Innovation at your fingertips
\r\n\t- Create personalized customer experiences
\r\n\t- Share your thoughts about how to improve company workflow
\r\n
\r\n"
+ format: full_html
+ summary: ''
+ field_image:
+ -
+ entity: 67ed572b-6083-4b52-91fa-e2202dc60fba
+ alt: ''
+ title: ''
+ width: 518
+ height: 419
diff --git a/modules/openideal_login/content/file/67ed572b-6083-4b52-91fa-e2202dc60fba.yml b/modules/openideal_login/content/file/67ed572b-6083-4b52-91fa-e2202dc60fba.yml
new file mode 100644
index 000000000..5fa7fba60
--- /dev/null
+++ b/modules/openideal_login/content/file/67ed572b-6083-4b52-91fa-e2202dc60fba.yml
@@ -0,0 +1,27 @@
+_meta:
+ version: '1.0'
+ entity_type: file
+ uuid: 67ed572b-6083-4b52-91fa-e2202dc60fba
+ default_langcode: en
+default:
+ uid:
+ -
+ target_id: 1
+ filename:
+ -
+ value: login_background.jpg
+ uri:
+ -
+ value: 'public://2020-10/login_background.jpg'
+ filemime:
+ -
+ value: image/jpeg
+ filesize:
+ -
+ value: 187648
+ status:
+ -
+ value: true
+ created:
+ -
+ value: 1603902995
diff --git a/modules/openideal_login/content/file/login_background.jpg b/modules/openideal_login/content/file/login_background.jpg
new file mode 100644
index 000000000..8c600d384
Binary files /dev/null and b/modules/openideal_login/content/file/login_background.jpg differ
diff --git a/modules/openideal_login/js/underliner.js b/modules/openideal_login/js/underliner.js
new file mode 100644
index 000000000..b8660aea1
--- /dev/null
+++ b/modules/openideal_login/js/underliner.js
@@ -0,0 +1,26 @@
+(function ($, Drupal) {
+
+ /**
+ * Attach behaviours on user login.
+ *
+ * @type {Drupal~behavior}
+ *
+ * @prop {Drupal~behaviorAttach} attach
+ * Add svg underline for tag.
+ */
+ Drupal.behaviors.openidealLoginUndeliner = {
+ attach: function (context, settings) {
+ if (settings.loginPage.underliner) {
+ var $span = $('.user-login-form--container--right__text--section__first span').once('openideal_login_undeliner');
+ if ($span.length) {
+ var $em = $('.user-login-form--container--right__text--section__first em').get(0);
+ $span.css('width', $em.offsetWidth)
+ $span.css('height', $em.offsetHeight)
+ new Underliner('.user-login-form--container--right__text--section__first em', '#27c0ff', '#27c0ff', 4, 6);
+ }
+ }
+ }
+ }
+
+}
+)(jQuery, Drupal);
diff --git a/modules/openideal_login/openideal_login.info.yml b/modules/openideal_login/openideal_login.info.yml
new file mode 100644
index 000000000..a5516ad02
--- /dev/null
+++ b/modules/openideal_login/openideal_login.info.yml
@@ -0,0 +1,12 @@
+name: 'OpenideaL Login'
+type: module
+description: 'Provides main slideshow functionality for OpenideaL login.'
+core: 8.x
+core_version_requirement: ^8 || ^9
+package: 'OpenideaL'
+
+dependencies:
+ - default_content:default_content
+ - openideal_user:openideal_user
+ - drupal:image
+ - drupal:text
diff --git a/modules/openideal_login/openideal_login.libraries.yml b/modules/openideal_login/openideal_login.libraries.yml
new file mode 100644
index 000000000..40274f5b2
--- /dev/null
+++ b/modules/openideal_login/openideal_login.libraries.yml
@@ -0,0 +1,7 @@
+underliner:
+ js:
+ js/underliner.js: {}
+ /libraries/link-underliner/index.js: {}
+ dependencies:
+ - core/jquery
+ - core/jquery.once
diff --git a/modules/openideal_login/openideal_login.module b/modules/openideal_login/openideal_login.module
new file mode 100644
index 000000000..aa640b9c3
--- /dev/null
+++ b/modules/openideal_login/openideal_login.module
@@ -0,0 +1,193 @@
+ 'html_tag',
+ '#tag' => 'h1',
+ '#value' => t('Create your @site account', ['@site' => \Drupal::config('system.site')->get('name')]),
+ '#weight' => -1,
+ ];
+}
+
+/**
+ * Implements hook_form_FORM_ID_alter().
+ */
+function openideal_login_form_user_login_form_alter(&$form, FormStateInterface $form_state, $form_id) {
+ /** @var \Drupal\social_api\Plugin\NetworkManager $network_manager */
+ $network_manager = \Drupal::service('plugin.network.manager');
+ $social_plugins = \Drupal::config('social_auth.settings')->get('auth');
+ $form['#attributes']['class'][] = 'user-login-form';
+ $form['container'] = [
+ '#type' => 'container',
+ '#attributes' => ['class' => ['user-login-form--container']],
+ 'left' => [
+ '#type' => 'container',
+ '#attributes' => ['class' => ['user-login-form--container--left']],
+ ],
+ 'right' => [
+ '#type' => 'container',
+ '#attributes' => ['class' => ['user-login-form--container--right']],
+ ],
+ ];
+
+ $entity_manager = \Drupal::entityTypeManager();
+ $block_entity = $entity_manager->getStorage('block_content')->loadByProperties(['info' => 'login']);
+ if (!empty($block_entity)) {
+ $block = $entity_manager->getViewBuilder('block_content')->view(current($block_entity), 'full');
+ $form['container']['right']['section']['block'] = $block;
+ }
+
+ $form['container']['left']['title'] = [
+ '#type' => 'html_tag',
+ '#tag' => 'h1',
+ '#attributes' => ['class' => ['user-login-form--container--title']],
+ '#value' => t('Login to @site', ['@site' => \Drupal::config('system.site')->get('name')]),
+ ];
+
+ foreach (['name', 'pass'] as $child) {
+ if (isset($form[$child])) {
+ unset($form[$child]['#description']);
+
+ if ($child == 'name') {
+ $form[$child]['#placeholder'] = t('Email Address');
+ $form[$child]['#weight'] = 3;
+ }
+ if ($child == 'pass') {
+ $form[$child]['#placeholder'] = t('Password');
+ $form[$child]['#weight'] = 4;
+ }
+
+ $form['container']['left'][$child] = $form[$child];
+ unset($form[$child]);
+ }
+ }
+
+ // Remove socials that aren't configured properly.
+ foreach ($social_plugins as $plugin_id => &$data) {
+ if (!$network_manager->createInstance($plugin_id)->getSdk()) {
+ unset($social_plugins[$plugin_id]);
+ }
+
+ $theme_path = \Drupal::service('theme_handler')->getTheme('openideal_theme')->getPath();
+ if (strpos($plugin_id, 'google') !== FALSE) {
+ $data['img_path'] = $theme_path . '/images/icons/google_icon.png';
+ $data['name'] = t('Sign in with Google');
+ }
+ elseif (strpos($plugin_id, 'facebook') !== FALSE) {
+ $data['img_path'] = $theme_path . '/images/icons/facebook_icon.png';
+ $data['name'] = t('Sign in with Facebook');
+ }
+ elseif (strpos($plugin_id, 'github') !== FALSE) {
+ $data['img_path'] = $theme_path . '/images/icons/github_icon.png';
+ $data['name'] = t('Sign in with GitHub');
+ }
+ }
+
+ if (!empty($social_plugins)) {
+ $form['container']['left']['or'] = [
+ '#type' => 'container',
+ '#attributes' => ['class' => ['user-login-form--container--left__or']],
+ 'before' => [
+ '#type' => 'container',
+ '#attributes' => ['class' => ['user-login-form--container--left__or--line']],
+ ],
+ 'or' => [
+ '#type' => 'html_tag',
+ '#tag' => 'p',
+ '#value' => 'or',
+ '#attributes' => ['class' => ['user-login-form--container--left__or--or']],
+ ],
+ 'after' => [
+ '#type' => 'container',
+ '#attributes' => ['class' => ['user-login-form--container--left__or--line']],
+ ],
+ '#weight' => '2',
+ ];
+
+ $form['container']['left']['social_buttons'] = [
+ '#type' => 'container',
+ '#attributes' => ['class' => ['user-login-form--container--left__social-login-buttons']],
+ 'buttons' => [
+ '#theme' => 'login_with',
+ '#social_networks' => $social_plugins,
+ '#weight' => '1',
+ ],
+ ];
+ }
+
+ $signup_link = Link::createFromRoute(t('signup'), 'user.register')->toString();
+ $reset_link = Link::createFromRoute(t('Forgot your password?'), 'user.pass')->toString();
+ $form['container']['left']['bottom'] = [
+ '#type' => 'container',
+ '#attributes' => ['class' => ['user-login-form--container__bottom']],
+ 'signup' => [
+ '#type' => 'html_tag',
+ '#attributes' => [
+ 'class' => [
+ 'user-login-form--container__bottom--signup',
+ 'user-login-form--container__bottom--text',
+ ],
+ ],
+ '#tag' => 'p',
+ '#value' => t("Don't have an account? @link", ['@link' => $signup_link]),
+ ],
+ 'reset' => [
+ '#type' => 'html_tag',
+ '#attributes' => [
+ 'class' => [
+ 'user-login-form--container__bottom--forgot-password',
+ 'user-login-form--container__bottom--text',
+ ],
+ ],
+ '#tag' => 'p',
+ '#value' => $reset_link,
+ ],
+ ];
+
+ $form['#attached']['library'][] = 'openideal_login/underliner';
+ $form['#attached']['drupalSettings']['loginPage']['underliner'] = TRUE;
+
+ $form['actions']['submit']['#value'] = t('Login');
+ $form['actions']['#attributes']['class'][] = 'user-login-form--container--actions';
+ $form['container']['left']['actions'] = $form['actions'];
+ unset($form['actions']);
+}
+
+/**
+ * Implements hook_user_login().
+ */
+function openideal_login_user_login(UserInterface $account) {
+ if (RouteMatch::createFromRequest(\Drupal::request())->getRouteName() == 'user_registrationpassword.confirm') {
+ $event = new OpenidealUserJoinedSiteEvent($account);
+ \Drupal::service('event_dispatcher')->dispatch(OpenidealUserEvents::OPENIDEA_USER_JOINED_THE_SITE, $event);
+
+ // Redirect user if joined the site for the first
+ // time via the user_registrationpassword one time link.
+ $response = new RedirectResponse(URL::fromRoute('openideal_user.register.user.more_about_you')->toString());
+ $response->send();
+ }
+
+ // If user was created by UI or via social logins then dispatch
+ // OpenidealUserEvents.
+ if (!$account->getLastAccessedTime()) {
+ $event = new OpenidealUserJoinedSiteEvent($account);
+ \Drupal::service('event_dispatcher')->dispatch(OpenidealUserEvents::OPENIDEA_USER_JOINED_THE_SITE, $event);
+ }
+}
diff --git a/modules/openideal_statistics/openideal_statistics.module b/modules/openideal_statistics/openideal_statistics.module
index 0d1435236..3ee4c32b1 100644
--- a/modules/openideal_statistics/openideal_statistics.module
+++ b/modules/openideal_statistics/openideal_statistics.module
@@ -10,11 +10,11 @@
*/
function openideal_statistics_theme() {
return [
- 'site_wide_statistics_block' => [
+ 'statistics_item' => [
'variables' => [
- 'content' => NULL,
- 'main_class' => NULL,
'show_title' => NULL,
+ 'img' => NULL,
+ 'bottom' => NULL,
],
],
'export_icon__openideal' => [
diff --git a/modules/openideal_statistics/src/Element/StatisticsItem.php b/modules/openideal_statistics/src/Element/StatisticsItem.php
new file mode 100644
index 000000000..4251dc765
--- /dev/null
+++ b/modules/openideal_statistics/src/Element/StatisticsItem.php
@@ -0,0 +1,94 @@
+ 'statistics_item',
+ '#show_title' => TRUE,
+
+ // These three variable are replaced/inserted into appropriate places in
+ // self::preRenderStatisticsItem().
+ '#img_class' => NULL,
+ '#lazy_element' => NULL,
+ '#item_title' => NULL,
+
+ '#img' => [
+ 'attributes' => [
+ 'class' => [
+ 'item-svg',
+ // Add.
+ 'idea-statistics-block--list__item--',
+ ],
+ ],
+ ],
+ '#bottom' => [
+ 'attributes' => ['class' => ['idea-statistics-block--list__item--bottom']],
+ 'count' => [
+ 'attributes' => ['class' => ['idea-statistics-block--list__item--count']],
+ 'value' => NULL,
+ ],
+ 'title' => [
+ 'value' => NULL,
+ 'attributes' => ['class' => ['idea-statistics-block--list__item--title']],
+ ],
+ ],
+ '#pre_render' => [
+ [self::class, 'preRenderStatisticsItem'],
+ ],
+ ];
+ }
+
+ /**
+ * Pre-render callback.
+ *
+ * @param array $element
+ * The renderable array representing the element.
+ *
+ * @return array
+ * The passed in element with changes made to attributes depending on
+ * context.
+ */
+ public static function preRenderStatisticsItem(array $element) {
+ // Set/configure/prepare attributes.
+ if ($key = array_search(
+ 'idea-statistics-block--list__item--',
+ $element['#img']['attributes']['class']
+ ) && isset($element['#img_class'])) {
+ $element['#img']['attributes']['class'][$key] .= $element['#img_class'];
+ $element['#bottom']['count']['attributes']['data-openideal-vote'] = $element['#img_class'];
+ unset($element['#img_class']);
+ }
+
+ if (isset($element['#lazy_element'])) {
+ $element['#bottom']['count']['value'] = $element['#lazy_element'];
+ unset($element['#lazy_element']);
+ }
+
+ if (isset($element['#item_title'])) {
+ $element['#img']['attributes']['title'] = $element['#item_title'];
+ $element['#bottom']['title']['value'] = $element['#item_title'];
+ unset($element['#item_title']);
+ }
+
+ $element['#img']['attributes'] = new Attribute($element['#img']['attributes']);
+ $element['#bottom']['attributes'] = new Attribute($element['#bottom']['attributes']);
+ $element['#bottom']['count']['attributes'] = new Attribute($element['#bottom']['count']['attributes']);
+ $element['#bottom']['title']['attributes'] = new Attribute($element['#bottom']['title']['attributes']);
+ return $element;
+ }
+
+}
diff --git a/modules/openideal_statistics/src/Plugin/Block/OpenidealStatisticsChallengeStatisticsBlock.php b/modules/openideal_statistics/src/Plugin/Block/OpenidealStatisticsChallengeStatisticsBlock.php
index ec61911da..756670d2e 100644
--- a/modules/openideal_statistics/src/Plugin/Block/OpenidealStatisticsChallengeStatisticsBlock.php
+++ b/modules/openideal_statistics/src/Plugin/Block/OpenidealStatisticsChallengeStatisticsBlock.php
@@ -28,7 +28,6 @@ class OpenidealStatisticsChallengeStatisticsBlock extends BlockBase {
* {@inheritdoc}
*/
public function build($challenge = NULL) {
- $build = [];
$contexts = $this->getContexts();
$is_not_full = isset($contexts['view_mode']) && $contexts['view_mode']->getContextValue() != 'full';
$id = NULL;
@@ -40,45 +39,56 @@ public function build($challenge = NULL) {
return [];
}
- $build['#theme'] = 'site_wide_statistics_block';
- $build['#main_class'] = 'idea-statistics-block';
- $build['#show_title'] = !$is_not_full;
- $build['#content'] = [
+ $items = [
'ideas' => [
- 'bottom' => [
+ '#lazy_element' => [
'#lazy_builder' => ['openideal_statistics.lazy_builder:getChallengeIdeas', [$id]],
'#create_placeholder' => TRUE,
],
- 'title' => $this->t('Challenge ideas'),
- 'img_class' => $is_not_full ? 'public_stream_idea' : 'statistics_tag',
+ '#item_title' => $this->t('Challenge ideas'),
+ '#img_class' => $is_not_full ? 'public_stream_idea' : 'statistics_tag',
],
'votes' => [
- 'bottom' => [
+ '#lazy_element' => [
'#lazy_builder' => ['openideal_statistics.lazy_builder:getVotes', [$id]],
'#create_placeholder' => TRUE,
],
- 'title' => $this->t('Votes'),
- 'img_class' => $is_not_full ? 'public_stream_like' : 'like_tag',
+ '#item_title' => $this->t('Votes'),
+ '#img_class' => $is_not_full ? 'public_stream_like' : 'like_tag',
],
'comments' => [
- 'bottom' => [
+ '#lazy_element' => [
'#lazy_builder' => ['openideal_statistics.lazy_builder:getComments', [$id]],
'#create_placeholder' => TRUE,
],
- 'title' => $this->t('Comments'),
- 'img_class' => $is_not_full ? 'public_stream_comment' : 'comment_tag',
+ '#item_title' => $this->t('Comments'),
+ '#img_class' => $is_not_full ? 'public_stream_comment' : 'comment_tag',
],
'views' => [
- 'bottom' => [
+ '#lazy_element' => [
'#lazy_builder' => ['openideal_statistics.lazy_builder:getViews', [$id]],
'#create_placeholder' => TRUE,
],
- 'title' => $this->t('Views'),
- 'img_class' => $is_not_full ? 'public_stream_view' : 'view_tag',
+ '#item_title' => $this->t('Views'),
+ '#img_class' => $is_not_full ? 'public_stream_view' : 'view_tag',
+ ],
+ ];
+
+ foreach ($items as &$item) {
+ $item['#wrapper_attributes'] = ['class' => ['idea-statistics-block--list__item']];
+ $item['#type'] = 'statistics_item';
+ $item['#show_title'] = !$is_not_full;
+ }
+
+ return [
+ 'content' => [
+ '#theme' => 'item_list',
+ '#items' => $items,
+ '#attributes' => ['class' => ['idea-statistics-block--list']],
+ '#wrapper_attributes' => ['class' => ['idea-statistics-block']],
],
];
- return $build;
}
}
diff --git a/modules/openideal_statistics/src/Plugin/Block/OpenidealStatisticsIdeaStatisticsBlock.php b/modules/openideal_statistics/src/Plugin/Block/OpenidealStatisticsIdeaStatisticsBlock.php
index 282b9a0ec..528138b78 100644
--- a/modules/openideal_statistics/src/Plugin/Block/OpenidealStatisticsIdeaStatisticsBlock.php
+++ b/modules/openideal_statistics/src/Plugin/Block/OpenidealStatisticsIdeaStatisticsBlock.php
@@ -28,7 +28,6 @@ class OpenidealStatisticsIdeaStatisticsBlock extends BlockBase {
* {@inheritdoc}
*/
public function build($challenge = NULL) {
- $build = [];
$contexts = $this->getContexts();
$is_not_full = isset($contexts['view_mode']) && $contexts['view_mode']->getContextValue() != 'full';
$id = NULL;
@@ -40,43 +39,55 @@ public function build($challenge = NULL) {
return [];
}
- $build['#theme'] = 'site_wide_statistics_block';
- $build['#main_class'] = 'idea-statistics-block';
- $build['#show_title'] = !$is_not_full;
- $build['#content'] = [
+ $items = [
'overall_score' => [
- 'bottom' => [
+ '#lazy_element' => [
$challenge ? '' : $node->field_overall_score->first()->view(['settings' => ['scale' => 0]]),
],
- 'title' => $this->t('Overall score'),
- 'img_class' => 'score_tag',
+ '#item_title' => $this->t('Overall score'),
+ '#img_class' => 'score_tag',
],
'votes' => [
- 'bottom' => [
+ '#lazy_element' => [
'#lazy_builder' => ['openideal_statistics.lazy_builder:getVotes', [$id]],
'#create_placeholder' => TRUE,
],
- 'title' => $this->t('Votes'),
- 'img_class' => $is_not_full ? 'public_stream_like' : 'like_tag',
+ '#item_title' => $this->t('Votes'),
+ '#img_class' => $is_not_full ? 'public_stream_like' : 'like_tag',
],
'comments' => [
- 'bottom' => [
+ '#lazy_element' => [
'#lazy_builder' => ['openideal_statistics.lazy_builder:getComments', [$id]],
'#create_placeholder' => TRUE,
],
- 'title' => $this->t('Comments'),
- 'img_class' => $is_not_full ? 'public_stream_comment' : 'comment_tag',
+ '#item_title' => $this->t('Comments'),
+ '#img_class' => $is_not_full ? 'public_stream_comment' : 'comment_tag',
],
'views' => [
- 'bottom' => [
+ '#lazy_element' => [
'#lazy_builder' => ['openideal_statistics.lazy_builder:getViews', [$id]],
'#create_placeholder' => TRUE,
],
- 'title' => $this->t('Views'),
- 'img_class' => $is_not_full ? 'public_stream_view' : 'view_tag',
+ '#item_title' => $this->t('Views'),
+ '#img_class' => $is_not_full ? 'public_stream_view' : 'view_tag',
+ ],
+ ];
+
+ // @Todo: create trait or abstract class with this as method.
+ foreach ($items as &$item) {
+ $item['#wrapper_attributes'] = ['class' => ['idea-statistics-block--list__item']];
+ $item['#type'] = 'statistics_item';
+ $item['#show_title'] = !$is_not_full;
+ }
+
+ return [
+ 'content' => [
+ '#theme' => 'item_list',
+ '#items' => $items,
+ '#attributes' => ['class' => ['idea-statistics-block--list']],
+ '#wrapper_attributes' => ['class' => ['idea-statistics-block']],
],
];
- return $build;
}
}
diff --git a/modules/openideal_statistics/src/Plugin/Block/SiteWideStatisticsBlock.php b/modules/openideal_statistics/src/Plugin/Block/SiteWideStatisticsBlock.php
index c8d8eecf2..1353839a3 100644
--- a/modules/openideal_statistics/src/Plugin/Block/SiteWideStatisticsBlock.php
+++ b/modules/openideal_statistics/src/Plugin/Block/SiteWideStatisticsBlock.php
@@ -18,44 +18,54 @@ class SiteWideStatisticsBlock extends BlockBase {
* {@inheritdoc}
*/
public function build() {
- $build['#theme'] = 'site_wide_statistics_block';
- $build['#main_class'] = 'site-wide-statistics-block';
- $build['#show_title'] = TRUE;
- $build['#content'] = [
+ $items = [
'ideas' => [
- 'bottom' => [
+ '#img_class' => 'statistics_tag',
+ '#lazy_element' => [
'#lazy_builder' => ['openideal_statistics.lazy_builder:getIdeas', []],
'#create_placeholder' => TRUE,
],
- 'title' => $this->t('Ideas'),
- 'img_class' => 'statistics_tag',
+ '#item_title' => $this->t('Ideas'),
],
'members' => [
- 'bottom' => [
+ '#lazy_element' => [
'#lazy_builder' => ['openideal_statistics.lazy_builder:getMembers', []],
'#create_placeholder' => TRUE,
],
- 'title' => $this->t('Members'),
- 'img_class' => 'members_tag',
+ '#item_title' => $this->t('Members'),
+ '#img_class' => 'members_tag',
],
'comments' => [
- 'bottom' => [
+ '#lazy_element' => [
'#lazy_builder' => ['openideal_statistics.lazy_builder:getComments', []],
'#create_placeholder' => TRUE,
],
- 'title' => $this->t('Comments'),
- 'img_class' => 'comment_tag',
+ '#item_title' => $this->t('Comments'),
+ '#img_class' => 'comment_tag',
],
'votes' => [
- 'bottom' => [
+ '#lazy_element' => [
'#lazy_builder' => ['openideal_statistics.lazy_builder:getVotes', []],
'#create_placeholder' => TRUE,
],
- 'title' => $this->t('Votes'),
- 'img_class' => 'like_tag',
+ '#item_title' => $this->t('Votes'),
+ '#img_class' => 'like_tag',
+ ],
+ ];
+
+ foreach ($items as &$item) {
+ $item['#wrapper_attributes'] = ['class' => ['idea-statistics-block--list__item']];
+ $item['#type'] = 'statistics_item';
+ }
+
+ return [
+ 'content' => [
+ '#theme' => 'item_list',
+ '#items' => $items,
+ '#attributes' => ['class' => ['idea-statistics-block--list']],
+ '#wrapper_attributes' => ['class' => ['idea-statistics-block']],
],
];
- return $build;
}
}
diff --git a/modules/openideal_statistics/templates/site-wide-statistics-block.html.twig b/modules/openideal_statistics/templates/site-wide-statistics-block.html.twig
deleted file mode 100644
index 01e9c76fb..000000000
--- a/modules/openideal_statistics/templates/site-wide-statistics-block.html.twig
+++ /dev/null
@@ -1,25 +0,0 @@
-{#
-/**
-* @file
-* Default theme implementation to display a block.
-*
-* @see template_preprocess_block()
-*
-* @ingroup themeable
-*/
-#}
-
-
- {% for item in content %}
- -
-
-
-
{{ item.bottom }}
- {% if show_title %}
-
{{ item.title }}
- {% endif %}
-
-
- {% endfor %}
-
-
diff --git a/modules/openideal_statistics/templates/statistics-item.html.twig b/modules/openideal_statistics/templates/statistics-item.html.twig
new file mode 100644
index 000000000..35a636059
--- /dev/null
+++ b/modules/openideal_statistics/templates/statistics-item.html.twig
@@ -0,0 +1,20 @@
+{#
+/**
+ * @file
+ * Default theme implementation for the statistics_item render element.
+ *
+ * Available variables:
+ * - img: attributes.
+ * - bottom: attributes, [count[value, attrbiutes], title[attributes, value]]
+ * - show_title: bool if TRUE show title. default TRUE
+ *
+ * @ingroup themeable
+ */
+#}
+
+
+
{{ bottom.count.value }}
+ {% if show_title %}
+
{{ bottom.title.value }}
+ {% endif %}
+
diff --git a/modules/openideal_user/images/login_background.jpg b/modules/openideal_user/images/login_background.jpg
new file mode 100644
index 000000000..d363d7047
Binary files /dev/null and b/modules/openideal_user/images/login_background.jpg differ
diff --git a/modules/openideal_user/openideal_user.install b/modules/openideal_user/openideal_user.install
new file mode 100644
index 000000000..f3e74f80a
--- /dev/null
+++ b/modules/openideal_user/openideal_user.install
@@ -0,0 +1,16 @@
+moduleExists('openideal_login')) {
+ \Drupal::service('module_installer')->install(['openideal_login']);
+ return t('The "OpenideaL Login" module has been installed.');
+ }
+}
diff --git a/modules/openideal_user/openideal_user.module b/modules/openideal_user/openideal_user.module
index 61f3992ee..1676c4ccf 100644
--- a/modules/openideal_user/openideal_user.module
+++ b/modules/openideal_user/openideal_user.module
@@ -10,7 +10,6 @@ use Drupal\message\MessageInterface;
use Drupal\Core\Access\AccessResult;
use Drupal\Core\Entity\EntityInterface;
use Drupal\Core\Form\FormStateInterface;
-use Drupal\Core\Routing\RouteMatch;
use Drupal\Core\Session\AccountInterface;
use Drupal\Core\Url;
use Drupal\flag\FlagInterface;
@@ -18,39 +17,12 @@ use Drupal\group\Entity\GroupContent;
use Drupal\node\NodeInterface;
use Drupal\openideal_user\Event\OpenidealUserEvents;
use Drupal\openideal_user\Event\OpenidealUserGroupEvent;
-use Drupal\openideal_user\Event\OpenidealUserJoinedSiteEvent;
use Drupal\openideal_user\Form\OpenidealSecondStepRegistrationForm;
use Drupal\transaction\TransactionInterface;
use Drupal\user\UserInterface;
use Drupal\views\Plugin\views\query\QueryPluginBase;
use Drupal\views\ViewExecutable;
use Drupal\views\Views;
-use Symfony\Component\HttpFoundation\RedirectResponse;
-
-/**
- * Implements hook_form_FORM_ID_alter().
- */
-function openideal_user_form_user_login_form_alter(&$form, FormStateInterface $form_state, $form_id) {
- /** @var \Drupal\social_api\Plugin\NetworkManager $network_manager */
- $network_manager = \Drupal::service('plugin.network.manager');
- $social_plugins = \Drupal::config('social_auth.settings')->get('auth');
-
- // Remove socials that aren't configured properly.
- foreach ($social_plugins as $plugin_id => $data) {
- if (!$network_manager->createInstance($plugin_id)->getSdk()) {
- unset($social_plugins[$plugin_id]);
- }
- }
- $form['actions']['social_buttons'] = [
- '#type' => 'container',
- '#attributes' => ['class' => ['social-login-buttons']],
- 'buttons' => [
- '#theme' => 'login_with',
- '#social_networks' => $social_plugins,
- '#weight' => '1',
- ],
- ];
-}
/**
* Implements hook_menu_local_tasks_alter().
@@ -78,28 +50,6 @@ function openideal_user_menu_local_tasks_alter(&$data, $route_name, RefinableCac
}
}
-/**
- * Implements hook_user_login().
- */
-function openideal_user_user_login(UserInterface $account) {
- if (RouteMatch::createFromRequest(\Drupal::request())->getRouteName() == 'user_registrationpassword.confirm') {
- $event = new OpenidealUserJoinedSiteEvent($account);
- \Drupal::service('event_dispatcher')->dispatch(OpenidealUserEvents::OPENIDEA_USER_JOINED_THE_SITE, $event);
-
- // Redirect user if joined the site for the first
- // time via the user_registrationpassword one time link.
- $response = new RedirectResponse(URL::fromRoute('openideal_user.register.user.more_about_you')->toString());
- $response->send();
- }
-
- // If user was created by UI or via social logins then dispatch
- // OpenidealUserEvents.
- if (!$account->getLastAccessedTime()) {
- $event = new OpenidealUserJoinedSiteEvent($account);
- \Drupal::service('event_dispatcher')->dispatch(OpenidealUserEvents::OPENIDEA_USER_JOINED_THE_SITE, $event);
- }
-}
-
/**
* Implements hook_entity_type_alter().
*/
@@ -233,7 +183,7 @@ function openideal_user_mail($key, &$message, $params) {
*/
function openideal_user_form_alter(&$form, FormStateInterface $form_state, $form_id) {
if (in_array($form_id, ['node_idea_edit_form', 'node_idea_form'])
- && !\Drupal::currentUser()->hasPermission('administer site configuration')) {
+ && !\Drupal::currentUser()->hasPermission('administer site configuration')) {
$form['field_duplicate_of']['#access'] = FALSE;
}
diff --git a/modules/openideal_user/src/IsUserProfilePageCacheContext.php b/modules/openideal_user/src/IsUserProfilePageCacheContext.php
index 352b857db..ec28b7b77 100644
--- a/modules/openideal_user/src/IsUserProfilePageCacheContext.php
+++ b/modules/openideal_user/src/IsUserProfilePageCacheContext.php
@@ -11,7 +11,7 @@
/**
* Defines the IsUserProfilePage service, for "is user profile page" caching.
*
- * Cache context ID: 'openideal_user.is_user_page_page'.
+ * Cache context ID: 'user.is_user_profile_page'.
*/
class IsUserProfilePageCacheContext extends UserCacheContextBase implements CacheContextInterface {
diff --git a/modules/openideal_user/src/Plugin/Notifier/OpenidealBulkEmailNotifier.php b/modules/openideal_user/src/Plugin/Notifier/OpenidealBulkEmailNotifier.php
index 41f11158a..b46448b19 100644
--- a/modules/openideal_user/src/Plugin/Notifier/OpenidealBulkEmailNotifier.php
+++ b/modules/openideal_user/src/Plugin/Notifier/OpenidealBulkEmailNotifier.php
@@ -114,6 +114,12 @@ protected function getRecipients() {
return $recipients;
}
+ // In case of mention send only for the mentioned user.
+ if ($template === 'user_mention') {
+ $owner = $this->message->getOwner();
+ return [$owner->id() => $owner->getEmail()];
+ }
+
// If it's a reply to comment only need to notify the parent comment owner.
if ($template === 'created_reply_on_comment') {
$comment = $this->message->field_comment_reference->entity;
diff --git a/modules/openideal_user/src/Plugin/RulesAction/MessageAction.php b/modules/openideal_user/src/Plugin/RulesAction/MessageAction.php
index 02c415621..32bfedf79 100644
--- a/modules/openideal_user/src/Plugin/RulesAction/MessageAction.php
+++ b/modules/openideal_user/src/Plugin/RulesAction/MessageAction.php
@@ -33,6 +33,11 @@
* assignment_restriction = "selector",
* required = TRUE
* ),
+ * "user" = @ContextDefinition("entity:user",
+ * label = @Translation("User"),
+ * assignment_restriction = "selector",
+ * required = FALSE
+ * ),
* }
* )
*/
@@ -89,14 +94,23 @@ public static function create(ContainerInterface $container, array $configuratio
* Template ID.
* @param \Drupal\Core\Entity\EntityInterface $entity
* The referenced entity.
+ * @param \Drupal\user\UserInterface $user
+ * The mentioned user.
*/
- protected function doExecute($template, EntityInterface $entity) {
+ protected function doExecute($template, EntityInterface $entity, UserInterface $user = NULL) {
// If user already voted nothing to do here.
if ($entity instanceof VoteInterface && $this->isUserVoted($entity, $template)) {
return;
}
$owner_id = $entity instanceof UserInterface ? $entity->id() : $entity->getOwnerId();
+
+ // In case if event is user mentions, need to specify a mentioned user
+ // as an owner.
+ if ($user) {
+ $owner_id = $user->id();
+ }
+
$message = Message::create(['template' => $template, 'uid' => $owner_id]);
$entity_type = $entity->getEntityTypeId();
diff --git a/themes/openideal_theme/css/style-rtl.css b/themes/openideal_theme/css/style-rtl.css
index a75a3b4fc..676b6415f 100644
--- a/themes/openideal_theme/css/style-rtl.css
+++ b/themes/openideal_theme/css/style-rtl.css
@@ -13636,9 +13636,11 @@ nav.tabs {
.site-navigation--add-idea a {
padding: 9.5px 1.3em;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #27C0FF;
color: #fff;
font-weight: bold;
@@ -13662,10 +13664,19 @@ nav.tabs {
text-transform: uppercase; }
.site-navigation--add-idea a:hover {
background-color: #27C8f9;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.site-navigation--add-idea a:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #27C8f9;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.site-navigation--add-idea a:before {
content: '';
display: inline-block;
@@ -13909,6 +13920,21 @@ nav.tabs {
.block-site-wide-statistics-block {
display: none; } }
+.list-group {
+ display: unset;
+ -webkit-box-orient: unset;
+ -webkit-box-direction: unset;
+ -webkit-flex-direction: unset;
+ -ms-flex-direction: unset;
+ flex-direction: unset; }
+
+.list-group-item {
+ display: unset;
+ position: unset;
+ padding: unset;
+ border: unset;
+ background-color: unset; }
+
.block-page-title-block .title {
color: #343352;
font-size: 2.25rem;
@@ -13949,18 +13975,51 @@ nav.tabs {
.form-actions input {
margin-bottom: 6px;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold; }
.form-actions input:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.form-actions input:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
+
+.form-control {
+ border: 1px solid #D0D6DC;
+ border-radius: unset;
+ line-height: 1.125rem;
+ height: unset; }
+ .form-control::-webkit-input-placeholder {
+ font-family: "Assistant", Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ font-size: 1rem;
+ display: block; }
+ .form-control::-moz-placeholder {
+ font-family: "Assistant", Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ font-size: 1rem;
+ display: block; }
+ .form-control::-ms-input-placeholder {
+ font-family: "Assistant", Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ font-size: 1rem;
+ display: block; }
+ .form-control::placeholder {
+ font-family: "Assistant", Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ font-size: 1rem;
+ display: block; }
.block-openidel-idea-node-bundle {
position: absolute;
@@ -14031,9 +14090,11 @@ nav.tabs {
margin-bottom: 24px; }
.comments--header__add-comment-btn {
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: transparent;
color: #fff;
font-weight: bold;
@@ -14043,10 +14104,19 @@ nav.tabs {
padding: 15px 70px; }
.comments--header__add-comment-btn:hover {
background-color: transparent;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.comments--header__add-comment-btn:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: transparent;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.comments--header__add-comment-btn:hover, .comments--header__add-comment-btn:active {
color: #1294ca; }
.comments--bottom {
@@ -14146,19 +14216,30 @@ nav.tabs {
text-transform: uppercase;
font-size: inherit;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold;
padding-right: 25px; }
.comment-comment-form .form-actions .font-submit-btn-wrapper .form-submit:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.comment-comment-form .form-actions .font-submit-btn-wrapper .form-submit:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.comment-comment-form .form-actions .font-submit-btn-wrapper img {
font-size: inherit;
top: 50%;
@@ -14262,9 +14343,11 @@ nav.tabs {
display: flex; }
.node--view-mode-full .block-field-blocknodearticlefield-tags .field__items li {
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #fff;
color: #fff;
font-weight: bold;
@@ -14278,10 +14361,19 @@ nav.tabs {
margin-bottom: 5px; }
.node--view-mode-full .block-field-blocknodearticlefield-tags .field__items li:hover {
background-color: #fff;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--view-mode-full .block-field-blocknodearticlefield-tags .field__items li:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #fff;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--view-mode-full .idea-statistics-and-status-block,
.node--view-mode-full .block-openideal-statistics-challenge-statistics {
@@ -14344,19 +14436,30 @@ nav.tabs {
.node--view-mode-full .two-columns-challenge-ideas a {
padding: 15px 70px;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #27C0FF;
color: #fff;
font-weight: bold;
font-size: 15px; }
.node--view-mode-full .two-columns-challenge-ideas a:hover {
background-color: #5eaed2;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--view-mode-full .two-columns-challenge-ideas a:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #5eaed2;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.view--news--all-news-page .node--type-article .card-body .block-openideal-rrssb-block h2 {
text-transform: uppercase;
@@ -14511,19 +14614,30 @@ nav.tabs {
font-size: 0.9375rem;
margin-bottom: 49px;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold;
margin-left: 0; }
.region-sidebar--flag-and-follow--element .votingapi-reaction-item:hover, .region-sidebar--flag--element .votingapi-reaction-item:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.region-sidebar--flag-and-follow--element .votingapi-reaction-item:active, .region-sidebar--flag--element .votingapi-reaction-item:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.region-sidebar--flag-and-follow--element .votingapi-reaction-item.active, .region-sidebar--flag--element .votingapi-reaction-item.active {
background-color: #1e7697; }
.region-sidebar--flag-and-follow--element .flag-follow, .region-sidebar--flag--element .flag-follow {
@@ -14543,18 +14657,29 @@ nav.tabs {
flex-basis: 100%;
font-size: 0.9375rem;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #27C0FF;
color: #fff;
font-weight: bold; }
.region-sidebar--flag-and-follow--element .flag-follow a:hover, .region-sidebar--flag-and-follow--element .flag-follow--body:hover, .region-sidebar--flag--element .flag-follow a:hover, .region-sidebar--flag--element .flag-follow--body:hover {
background-color: #5eaed2;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.region-sidebar--flag-and-follow--element .flag-follow a:active, .region-sidebar--flag-and-follow--element .flag-follow--body:active, .region-sidebar--flag--element .flag-follow a:active, .region-sidebar--flag--element .flag-follow--body:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #5eaed2;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.region-sidebar--flag-and-follow--element .flag-follow--body, .region-sidebar--flag--element .flag-follow--body {
margin: 70px 0 11px 0; }
@@ -14626,9 +14751,11 @@ nav.tabs {
.block-openideal-idea-tags-block .list-group-item {
margin-bottom: 5px;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #fff;
color: #fff;
font-weight: bold;
@@ -14641,10 +14768,19 @@ nav.tabs {
text-decoration: none; }
.block-openideal-idea-tags-block .list-group-item:hover {
background-color: #fff;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.block-openideal-idea-tags-block .list-group-item:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #fff;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.idea-statistics-block {
margin-bottom: 15px;
@@ -15199,13 +15335,13 @@ nav.tabs {
.node--view-mode-teaser .teaser-top-section--section__second {
padding: 15px; } }
-.site-wide-statistics-block--list {
+.block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
list-style: none; }
- .site-wide-statistics-block--list__item {
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
@@ -15229,7 +15365,7 @@ nav.tabs {
padding: 12px 6px 0;
background-color: #fff;
min-width: 77px; }
- .site-wide-statistics-block--list__item--bottom {
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item--bottom {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
@@ -15244,23 +15380,27 @@ nav.tabs {
-ms-flex-align: center;
align-items: center;
text-transform: uppercase; }
- .site-wide-statistics-block--list__item .item-svg {
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item .item-svg {
width: 32px;
height: 32px;
- margin-bottom: 6px; }
- .site-wide-statistics-block--list__item--statistics_tag {
+ margin-bottom: 6px;
+ margin-left: 0; }
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item--statistics_tag {
background: url("../images/icons/statistics_tag.svg") no-repeat center center; }
- .site-wide-statistics-block--list__item--members_tag {
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item--members_tag {
background: url("../images/icons/members_tag.svg") no-repeat center center; }
- .site-wide-statistics-block--list__item--comment_tag {
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item--comment_tag {
background: url("../images/icons/comment_tag.svg") no-repeat center center; }
- .site-wide-statistics-block--list__item--like_tag {
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item--like_tag {
background: url("../images/icons/like_tag.svg") no-repeat center center; }
- .site-wide-statistics-block--list__item p {
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item p {
line-height: 1;
letter-spacing: -0.5px;
font-size: 15px; }
- .site-wide-statistics-block--list__item--count {
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item--title {
+ margin-bottom: 1rem; }
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item--count {
+ margin-left: 0;
font-weight: bold;
margin-bottom: 1px; }
@@ -15527,9 +15667,11 @@ nav.tabs {
-ms-flex-align: center;
align-items: center;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold;
@@ -15544,10 +15686,19 @@ nav.tabs {
color: #fff; }
.entity--user--canonical .user-top .nav-tabs .nav-item .nav-link:hover {
background-color: #1e829a;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.entity--user--canonical .user-top .nav-tabs .nav-item .nav-link:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e829a;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.entity--user--canonical .user-top .nav-tabs .nav-item .nav-link:before {
content: '';
display: block;
@@ -15577,9 +15728,11 @@ nav.tabs {
-ms-flex-align: center;
align-items: center;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold;
@@ -15590,10 +15743,19 @@ nav.tabs {
color: #fff; }
.entity--user--canonical .user-top .user-actions--link a:hover {
background-color: #1e829a;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.entity--user--canonical .user-top .user-actions--link a:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e829a;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.profile-user-profile-view-mode h2 {
font-size: 30px;
@@ -15694,7 +15856,6 @@ nav.tabs {
.main-content nav.tabs ul .nav-item.active a {
background: unset; }
-.user--login section.main-content,
.user--register section.main-content,
.user--pass section.main-content {
display: -webkit-box;
@@ -15715,7 +15876,6 @@ nav.tabs {
-ms-flex-align: center;
align-items: center; }
-.user--login .block-system-main-block,
.user--register .block-system-main-block,
.user--pass .block-system-main-block {
display: -webkit-box;
@@ -15727,7 +15887,6 @@ nav.tabs {
-ms-flex-pack: center;
justify-content: center; }
-.user--login .nav-tabs,
.user--register .nav-tabs,
.user--pass .nav-tabs {
-webkit-box-pack: center;
@@ -15738,7 +15897,6 @@ nav.tabs {
.user-login-form,
.user-pass,
.user-register-form {
- max-width: 560px;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
@@ -15772,6 +15930,7 @@ nav.tabs {
.user-pass .password-parent,
.user-register-form .confirm-parent,
.user-register-form .password-parent {
+ max-width: unset;
min-width: unset;
overflow: unset; }
.user-login-form .form-submit,
@@ -15782,31 +15941,72 @@ nav.tabs {
.user-login-form .form-actions,
.user-pass .form-actions,
.user-register-form .form-actions {
- width: 100%; }
+ -webkit-box-align: center;
+ -webkit-align-items: center;
+ -ms-flex-align: center;
+ align-items: center;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ text-transform: uppercase; }
.user-login-form .form-actions input,
.user-pass .form-actions input,
.user-register-form .form-actions input {
+ border-width: 0;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
- background-color: #1294ca;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
+ background-color: #27C0FF;
color: #fff;
font-weight: bold; }
.user-login-form .form-actions input:hover,
.user-pass .form-actions input:hover,
.user-register-form .form-actions input:hover {
- background-color: #1e7697;
- text-decoration: none; }
+ background-color: #2e5d6d;
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.user-login-form .form-actions input:active,
.user-pass .form-actions input:active,
.user-register-form .form-actions input:active {
- background-color: #1e7697;
- text-decoration: none; }
- .user-login-form .social-login-buttons,
- .user-pass .social-login-buttons,
- .user-register-form .social-login-buttons {
- margin-top: 5px;
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
+ background-color: #2e5d6d;
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
+
+.user-pass,
+.user-register-form {
+ padding: 2.5rem 2.875rem;
+ max-width: 62.5rem;
+ background-color: #fff; }
+ .user-pass h1,
+ .user-register-form h1 {
+ font-style: normal;
+ font-weight: 600;
+ font-size: 1.5625rem;
+ line-height: 2.0625rem;
+ text-align: center;
+ margin-bottom: 2.5625rem; }
+ .user-pass .form-group,
+ .user-register-form .form-group {
+ margin-bottom: 0.625rem; }
+ .user-pass .form-control,
+ .user-register-form .form-control {
+ padding: 0.9375rem 0.875rem; }
+ .user-pass .form-group,
+ .user-register-form .form-group {
+ width: 100%; }
+ .user-pass .form-actions,
+ .user-register-form .form-actions {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
@@ -15815,39 +16015,14 @@ nav.tabs {
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
- -webkit-box-pack: center;
- -webkit-justify-content: center;
- -ms-flex-pack: center;
- justify-content: center; }
- .user-login-form .social-login-buttons img,
- .user-pass .social-login-buttons img,
- .user-register-form .social-login-buttons img {
- border-radius: 50%; }
-
-@media (max-width: 615px) {
- .user-login-form .form-actions {
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- -webkit-box-orient: horizontal;
+ -webkit-box-orient: vertical;
-webkit-box-direction: normal;
- -webkit-flex-direction: row;
- -ms-flex-direction: row;
- flex-direction: row;
- -webkit-box-pack: center;
- -webkit-justify-content: center;
- -ms-flex-pack: center;
- justify-content: center;
- -webkit-flex-wrap: wrap;
- -ms-flex-wrap: wrap;
- flex-wrap: wrap;
- width: 100%; }
- .user-login-form .form-actions .form-submit {
- -webkit-box-flex: 1;
- -webkit-flex: 1 0 100%;
- -ms-flex: 1 0 100%;
- flex: 1 0 100%; } }
+ -webkit-flex-direction: column;
+ -ms-flex-direction: column;
+ flex-direction: column; }
+ .user-pass .form-actions input,
+ .user-register-form .form-actions input {
+ width: 50%; }
.node--edit-form--main {
float: unset;
@@ -15855,9 +16030,11 @@ nav.tabs {
padding-left: 0; }
.node--edit-form--main input[type="submit"] {
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: transparent;
color: #fff;
font-weight: bold;
@@ -15867,10 +16044,19 @@ nav.tabs {
transition: background-color 0.5s ease-in-out, color 0.5s ease-in-out; }
.node--edit-form--main input[type="submit"]:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form--main input[type="submit"]:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form--main input[type="submit"]:hover {
color: #fff; }
.node--edit-form--main input[type="text"] {
@@ -15883,18 +16069,29 @@ nav.tabs {
padding: 1px 14px;
font-size: 16px;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold; }
.node--edit-form--main button:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form--main button:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form--main .details-wrapper {
position: relative; }
.node--edit-form--main .details-wrapper label {
@@ -15906,18 +16103,29 @@ nav.tabs {
height: unset;
font-size: 14px;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold; }
.node--edit-form--main .details-wrapper .js-form-wrapper .form-submit:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form--main .details-wrapper .js-form-wrapper .form-submit:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form--main .form-item-field-category label {
font-size: 16px; }
@@ -15945,20 +16153,31 @@ nav.tabs {
.node--edit-form .field--widget-moderation-state-buttons > div .form-control:disabled,
.node--edit-form .field--widget-moderation-state-buttons > div .form-control[readonly] {
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold; }
.node--edit-form .field--widget-moderation-state-buttons > div .form-control:disabled:hover,
.node--edit-form .field--widget-moderation-state-buttons > div .form-control[readonly]:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form .field--widget-moderation-state-buttons > div .form-control:disabled:active,
.node--edit-form .field--widget-moderation-state-buttons > div .form-control[readonly]:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form--footer {
float: unset;
@@ -15981,18 +16200,29 @@ nav.tabs {
height: unset;
margin-left: 10px;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold; }
.node--edit-form--footer .form-group input:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form--footer .form-group input:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
@media (max-width: 530px) {
.node--edit-form .field--widget-moderation-state-buttons > div input {
@@ -16290,9 +16520,11 @@ nav.tabs {
.view-frontpage .view-filters .form-row .frontpage-add-idea-button {
margin-right: auto;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #27C0FF;
color: #fff;
font-weight: bold;
@@ -16301,10 +16533,19 @@ nav.tabs {
padding: 0.6em 2.5em; }
.view-frontpage .view-filters .form-row .frontpage-add-idea-button:hover {
background-color: #5eaed2;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.view-frontpage .view-filters .form-row .frontpage-add-idea-button:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #5eaed2;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.view-frontpage .view-filters .form-row .frontpage-add-idea-button:before {
content: '';
display: inline-block;
@@ -16535,7 +16776,6 @@ nav.tabs {
display: none; }
.teaser-view-mode fieldset select,
.view--user-admin-people--community-page fieldset select {
- margin-bottom: 5px;
border: 1px solid #C6CDD0;
border-radius: 4px;
-webkit-appearance: none;
@@ -16560,14 +16800,13 @@ nav.tabs {
border: 0.8px solid #D0D6DC;
border-radius: 30px;
background: #E8E8E9;
- margin-top: 0;
- margin-bottom: 5px; }
+ margin-top: 0; }
.teaser-view-mode .form-item-search label,
.view--user-admin-people--community-page .form-item-search label {
display: none; }
.teaser-view-mode .form-item-search input,
.view--user-admin-people--community-page .form-item-search input {
- padding: 18px 18px 18px 3rem;
+ padding: 0.5rem 1.25rem;
background: transparent;
border: none;
margin: 0; }
@@ -16699,7 +16938,8 @@ nav.tabs {
content: ": "; }
.node--view-mode-teaser .block-openideal-idea-info-block .idea-information--list__item--value {
margin-left: 5px;
- font-size: 14px; }
+ font-size: 14px;
+ margin-bottom: 0; }
.node--view-mode-teaser .block-openideal-idea-info-block .idea-information--list__item--value .challenge-status--deadline {
font-size: 14px; }
.node--view-mode-teaser .block-field-blocknodechallengetitle a,
@@ -17020,9 +17260,11 @@ nav.tabs {
.openideal-statistics-date-select-form .form-submit {
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold;
@@ -17030,10 +17272,19 @@ nav.tabs {
margin-bottom: 15px; }
.openideal-statistics-date-select-form .form-submit:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.openideal-statistics-date-select-form .form-submit:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.reports-filters {
display: -webkit-box;
@@ -17193,18 +17444,29 @@ nav.tabs {
-ms-flex-preferred-size: 10%;
flex-basis: 10%;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold; }
.field--widget-openideal-user-entity-browser-single-file input:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.field--widget-openideal-user-entity-browser-single-file input:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.idea-statistics-and-status-block--status {
position: relative;
@@ -17296,6 +17558,16 @@ nav.tabs {
.idea-workflow-full {
color: #828282;
text-transform: capitalize; }
+ .idea-workflow-full .list-group {
+ -webkit-box-orient: vertical;
+ -webkit-box-direction: normal;
+ -webkit-flex-direction: column;
+ -ms-flex-direction: column;
+ flex-direction: column;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex; }
.idea-workflow-full--group-title {
margin-bottom: 18.5px;
font-weight: bold;
@@ -17505,6 +17777,264 @@ nav.tabs {
background: -o-linear-gradient(top, #676C72 0.01%, #676C72 24.75%, #1294CA 25.28%, #1294CA 45.54%, #1EBCA1 48.73%, #1EBCA1 67.12%, #C7D2EB 67.39%, #C7D2EB 100%);
background: linear-gradient(-180deg, #676C72 0.01%, #676C72 24.75%, #1294CA 25.28%, #1294CA 45.54%, #1EBCA1 48.73%, #1EBCA1 67.12%, #C7D2EB 67.39%, #C7D2EB 100%); }
+.user-login-form {
+ padding-bottom: calc(1rem + 2.5rem); }
+ .user-login-form--container {
+ background-color: #fff;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex; }
+ .user-login-form--container--title {
+ font-style: normal;
+ font-weight: 600;
+ font-size: 1.5625rem;
+ line-height: 2.0625rem;
+ text-align: center;
+ margin-bottom: 2.5625rem; }
+ .user-login-form--container--left {
+ position: relative;
+ padding: 2.5rem 2.875rem;
+ width: 32.625rem; }
+ .user-login-form--container--left__social-login-buttons .social-auth {
+ margin-bottom: 0.75rem;
+ background: #FFFFFF;
+ border: 1px solid #D0D6DC;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box;
+ border-radius: 60px;
+ padding: 1.125rem;
+ position: relative;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-pack: center;
+ -webkit-justify-content: center;
+ -ms-flex-pack: center;
+ justify-content: center; }
+ .user-login-form--container--left__social-login-buttons .social-auth--name {
+ font-family: "Assistant", Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ font-style: normal;
+ font-weight: 600;
+ font-size: 0.9375rem;
+ line-height: 1.25rem;
+ color: #343352; }
+ .user-login-form--container--left__social-login-buttons .social-auth--icon-wrapper {
+ position: absolute;
+ width: 34px;
+ -webkit-box-pack: center;
+ -webkit-justify-content: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ right: 1.25rem;
+ top: 50%;
+ -webkit-transform: translateY(-50%);
+ -o-transform: translateY(-50%);
+ transform: translateY(-50%);
+ margin-left: 0.625rem; }
+ .user-login-form--container--left__social-login-buttons .social-auth--icon-wrapper::after {
+ content: '';
+ width: 1px;
+ height: 100%;
+ display: block;
+ background: #D0D6DC;
+ position: absolute;
+ left: -0.75rem;
+ top: 0; }
+ .user-login-form--container--left__or {
+ margin: 10px 0;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex; }
+ .user-login-form--container--left__or--line {
+ -webkit-box-flex: 1;
+ -webkit-flex-grow: 1;
+ -ms-flex-positive: 1;
+ flex-grow: 1;
+ -webkit-flex-shrink: 1;
+ -ms-flex-negative: 1;
+ flex-shrink: 1;
+ background-color: #dbdbdb;
+ height: 1px;
+ position: relative;
+ top: .45em; }
+ .user-login-form--container--left__or--or {
+ color: #8e8e8e;
+ -webkit-box-flex: 0;
+ -webkit-flex-grow: 0;
+ -ms-flex-positive: 0;
+ flex-grow: 0;
+ -webkit-flex-shrink: 0;
+ -ms-flex-negative: 0;
+ flex-shrink: 0;
+ font-size: 13px;
+ font-weight: 600;
+ line-height: 15px;
+ margin: 0 18px;
+ text-transform: uppercase; }
+ .user-login-form--container--right {
+ width: 32.625rem;
+ color: #fff;
+ margin-bottom: 0;
+ position: relative;
+ background: #26282E;
+ overflow: hidden; }
+ .user-login-form--container--right__text {
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex; }
+ .user-login-form--container--right__text--section__first {
+ z-index: 999;
+ padding: 2.375rem; }
+ .user-login-form--container--right__text--section__first ul {
+ list-style: none;
+ padding: 0;
+ margin: 0; }
+ .user-login-form--container--right__text--section__first li {
+ padding-right: 0.8125rem;
+ text-indent: -.7em;
+ margin-bottom: 1.0625rem;
+ font-size: 1.25rem;
+ line-height: 1.625rem; }
+ .user-login-form--container--right__text--section__first li::before {
+ content: "• ";
+ font-size: 1.5625rem;
+ color: #27C0FF; }
+ .user-login-form--container--right__text--section__first h2 {
+ font-style: normal;
+ font-weight: bold;
+ font-size: 3.25rem;
+ line-height: 60px;
+ letter-spacing: 0.01em; }
+ .user-login-form--container--right__text--section__first h2 span {
+ display: inline-block;
+ position: relative; }
+ .user-login-form--container--right__text--section__first h2 em {
+ color: white; }
+ .user-login-form--container--right__text--section__first h2 em + svg {
+ position: absolute;
+ right: 0;
+ bottom: -40%;
+ opacity: 1; }
+ .user-login-form--container--right__text--section__first h2 em + svg path {
+ stroke-dashoffset: 0; }
+ .user-login-form--container--right__text--section__first h2 svg {
+ pointer-events: none;
+ -webkit-transition: 0.5s;
+ -o-transition: 0.5s;
+ transition: 0.5s; }
+ .user-login-form--container--right__text--section__first h2 path {
+ -webkit-transition: stroke-dasharray 0.5s, stroke-dashoffset 0.5s, opacity 0.5s;
+ -o-transition: stroke-dasharray 0.5s, stroke-dashoffset 0.5s, opacity 0.5s;
+ transition: stroke-dasharray 0.5s, stroke-dashoffset 0.5s, opacity 0.5s; }
+ .user-login-form--container--right__text--section__first h2 path:last-child {
+ opacity: 0.2; }
+ .user-login-form--container--right__text--section__second {
+ position: absolute;
+ bottom: 0; }
+ .user-login-form--container--right__text--section__second::after {
+ content: '';
+ position: absolute;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ background: -webkit-linear-gradient(266.59deg, #262930 7.81%, rgba(38, 41, 48, 0) 40.61%);
+ background: -o-linear-gradient(266.59deg, #262930 7.81%, rgba(38, 41, 48, 0) 40.61%);
+ background: linear-gradient(-176.59deg, #262930 7.81%, rgba(38, 41, 48, 0) 40.61%); }
+ .user-login-form--container__bottom {
+ position: absolute;
+ bottom: -7.5rem;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-orient: vertical;
+ -webkit-box-direction: normal;
+ -webkit-flex-direction: column;
+ -ms-flex-direction: column;
+ flex-direction: column;
+ -webkit-box-align: center;
+ -webkit-align-items: center;
+ -ms-flex-align: center;
+ align-items: center;
+ -webkit-box-pack: center;
+ -webkit-justify-content: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ right: 50%;
+ -webkit-transform: translateX(50%);
+ -o-transform: translateX(50%);
+ transform: translateX(50%);
+ width: 19rem; }
+ .user-login-form--container__bottom--text {
+ font-weight: 600;
+ font-size: 1rem;
+ line-height: 1.3125rem;
+ color: #000; }
+ .user-login-form--container__bottom--text a {
+ color: #27C0FF; }
+ .user-login-form--container--actions {
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-align: center;
+ -webkit-align-items: center;
+ -ms-flex-align: center;
+ align-items: center;
+ width: 100%;
+ -webkit-box-pack: center;
+ -webkit-justify-content: center;
+ -ms-flex-pack: center;
+ justify-content: center; }
+ .user-login-form--container--actions .form-submit {
+ width: 50%; }
+ .user-login-form .form-control {
+ padding: 1.125rem 1rem; }
+
+@media (max-width: 83.125rem) {
+ .user-login-form--container--right, .user-login-form--container--left {
+ width: 25rem; } }
+
+@media (max-width: 53.75rem) {
+ .user-login-form--container--right {
+ display: none; }
+ .user-login-form--container--left {
+ width: auto; }
+ .user-login-form--container--left__social-login-buttons .social-auth {
+ padding: 0.875rem; } }
+
+@media (max-width: 26.375rem) {
+ .user-login-form--container--left {
+ padding: 0.875rem 0.875rem; }
+ .user-login-form--container--left__social-login-buttons {
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-pack: space-evenly;
+ -webkit-justify-content: space-evenly;
+ -ms-flex-pack: space-evenly;
+ justify-content: space-evenly; }
+ .user-login-form--container--left__social-login-buttons .social-auth--icon-wrapper {
+ position: static;
+ -webkit-transform: unset;
+ -o-transform: unset;
+ transform: unset;
+ margin: 0; }
+ .user-login-form--container--left__social-login-buttons .social-auth--icon-wrapper::after {
+ content: unset; }
+ .user-login-form--container--left__social-login-buttons .social-auth--name {
+ display: none; } }
+
.community-page .view-content {
display: -webkit-box;
display: -webkit-flex;
diff --git a/themes/openideal_theme/css/style.css b/themes/openideal_theme/css/style.css
index 39338c57b..53ea717bf 100644
--- a/themes/openideal_theme/css/style.css
+++ b/themes/openideal_theme/css/style.css
@@ -13636,9 +13636,11 @@ nav.tabs {
.site-navigation--add-idea a {
padding: 9.5px 1.3em;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #27C0FF;
color: #fff;
font-weight: bold;
@@ -13662,10 +13664,19 @@ nav.tabs {
text-transform: uppercase; }
.site-navigation--add-idea a:hover {
background-color: #27C8f9;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.site-navigation--add-idea a:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #27C8f9;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.site-navigation--add-idea a:before {
content: '';
display: inline-block;
@@ -13909,6 +13920,21 @@ nav.tabs {
.block-site-wide-statistics-block {
display: none; } }
+.list-group {
+ display: unset;
+ -webkit-box-orient: unset;
+ -webkit-box-direction: unset;
+ -webkit-flex-direction: unset;
+ -ms-flex-direction: unset;
+ flex-direction: unset; }
+
+.list-group-item {
+ display: unset;
+ position: unset;
+ padding: unset;
+ border: unset;
+ background-color: unset; }
+
.block-page-title-block .title {
color: #343352;
font-size: 2.25rem;
@@ -13949,18 +13975,51 @@ nav.tabs {
.form-actions input {
margin-bottom: 6px;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold; }
.form-actions input:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.form-actions input:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
+
+.form-control {
+ border: 1px solid #D0D6DC;
+ border-radius: unset;
+ line-height: 1.125rem;
+ height: unset; }
+ .form-control::-webkit-input-placeholder {
+ font-family: "Assistant", Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ font-size: 1rem;
+ display: block; }
+ .form-control::-moz-placeholder {
+ font-family: "Assistant", Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ font-size: 1rem;
+ display: block; }
+ .form-control::-ms-input-placeholder {
+ font-family: "Assistant", Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ font-size: 1rem;
+ display: block; }
+ .form-control::placeholder {
+ font-family: "Assistant", Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ font-size: 1rem;
+ display: block; }
.block-openidel-idea-node-bundle {
position: absolute;
@@ -14031,9 +14090,11 @@ nav.tabs {
margin-bottom: 24px; }
.comments--header__add-comment-btn {
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: transparent;
color: #fff;
font-weight: bold;
@@ -14043,10 +14104,19 @@ nav.tabs {
padding: 15px 70px; }
.comments--header__add-comment-btn:hover {
background-color: transparent;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.comments--header__add-comment-btn:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: transparent;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.comments--header__add-comment-btn:hover, .comments--header__add-comment-btn:active {
color: #1294ca; }
.comments--bottom {
@@ -14146,19 +14216,30 @@ nav.tabs {
text-transform: uppercase;
font-size: inherit;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold;
padding-left: 25px; }
.comment-comment-form .form-actions .font-submit-btn-wrapper .form-submit:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.comment-comment-form .form-actions .font-submit-btn-wrapper .form-submit:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.comment-comment-form .form-actions .font-submit-btn-wrapper img {
font-size: inherit;
top: 50%;
@@ -14262,9 +14343,11 @@ nav.tabs {
display: flex; }
.node--view-mode-full .block-field-blocknodearticlefield-tags .field__items li {
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #fff;
color: #fff;
font-weight: bold;
@@ -14278,10 +14361,19 @@ nav.tabs {
margin-bottom: 5px; }
.node--view-mode-full .block-field-blocknodearticlefield-tags .field__items li:hover {
background-color: #fff;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--view-mode-full .block-field-blocknodearticlefield-tags .field__items li:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #fff;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--view-mode-full .idea-statistics-and-status-block,
.node--view-mode-full .block-openideal-statistics-challenge-statistics {
@@ -14344,19 +14436,30 @@ nav.tabs {
.node--view-mode-full .two-columns-challenge-ideas a {
padding: 15px 70px;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #27C0FF;
color: #fff;
font-weight: bold;
font-size: 15px; }
.node--view-mode-full .two-columns-challenge-ideas a:hover {
background-color: #5eaed2;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--view-mode-full .two-columns-challenge-ideas a:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #5eaed2;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.view--news--all-news-page .node--type-article .card-body .block-openideal-rrssb-block h2 {
text-transform: uppercase;
@@ -14511,19 +14614,30 @@ nav.tabs {
font-size: 0.9375rem;
margin-bottom: 49px;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold;
margin-right: 0; }
.region-sidebar--flag-and-follow--element .votingapi-reaction-item:hover, .region-sidebar--flag--element .votingapi-reaction-item:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.region-sidebar--flag-and-follow--element .votingapi-reaction-item:active, .region-sidebar--flag--element .votingapi-reaction-item:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.region-sidebar--flag-and-follow--element .votingapi-reaction-item.active, .region-sidebar--flag--element .votingapi-reaction-item.active {
background-color: #1e7697; }
.region-sidebar--flag-and-follow--element .flag-follow, .region-sidebar--flag--element .flag-follow {
@@ -14543,18 +14657,29 @@ nav.tabs {
flex-basis: 100%;
font-size: 0.9375rem;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #27C0FF;
color: #fff;
font-weight: bold; }
.region-sidebar--flag-and-follow--element .flag-follow a:hover, .region-sidebar--flag-and-follow--element .flag-follow--body:hover, .region-sidebar--flag--element .flag-follow a:hover, .region-sidebar--flag--element .flag-follow--body:hover {
background-color: #5eaed2;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.region-sidebar--flag-and-follow--element .flag-follow a:active, .region-sidebar--flag-and-follow--element .flag-follow--body:active, .region-sidebar--flag--element .flag-follow a:active, .region-sidebar--flag--element .flag-follow--body:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #5eaed2;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.region-sidebar--flag-and-follow--element .flag-follow--body, .region-sidebar--flag--element .flag-follow--body {
margin: 70px 0 11px 0; }
@@ -14626,9 +14751,11 @@ nav.tabs {
.block-openideal-idea-tags-block .list-group-item {
margin-bottom: 5px;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #fff;
color: #fff;
font-weight: bold;
@@ -14641,10 +14768,19 @@ nav.tabs {
text-decoration: none; }
.block-openideal-idea-tags-block .list-group-item:hover {
background-color: #fff;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.block-openideal-idea-tags-block .list-group-item:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #fff;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.idea-statistics-block {
margin-bottom: 15px;
@@ -15199,13 +15335,13 @@ nav.tabs {
.node--view-mode-teaser .teaser-top-section--section__second {
padding: 15px; } }
-.site-wide-statistics-block--list {
+.block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
list-style: none; }
- .site-wide-statistics-block--list__item {
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
@@ -15229,7 +15365,7 @@ nav.tabs {
padding: 12px 6px 0;
background-color: #fff;
min-width: 77px; }
- .site-wide-statistics-block--list__item--bottom {
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item--bottom {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
@@ -15244,23 +15380,27 @@ nav.tabs {
-ms-flex-align: center;
align-items: center;
text-transform: uppercase; }
- .site-wide-statistics-block--list__item .item-svg {
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item .item-svg {
width: 32px;
height: 32px;
- margin-bottom: 6px; }
- .site-wide-statistics-block--list__item--statistics_tag {
+ margin-bottom: 6px;
+ margin-right: 0; }
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item--statistics_tag {
background: url("../images/icons/statistics_tag.svg") no-repeat center center; }
- .site-wide-statistics-block--list__item--members_tag {
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item--members_tag {
background: url("../images/icons/members_tag.svg") no-repeat center center; }
- .site-wide-statistics-block--list__item--comment_tag {
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item--comment_tag {
background: url("../images/icons/comment_tag.svg") no-repeat center center; }
- .site-wide-statistics-block--list__item--like_tag {
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item--like_tag {
background: url("../images/icons/like_tag.svg") no-repeat center center; }
- .site-wide-statistics-block--list__item p {
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item p {
line-height: 1;
letter-spacing: -0.5px;
font-size: 15px; }
- .site-wide-statistics-block--list__item--count {
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item--title {
+ margin-bottom: 1rem; }
+ .block-openideal-statistics.block-site-wide-statistics-block .idea-statistics-block--list__item--count {
+ margin-right: 0;
font-weight: bold;
margin-bottom: 1px; }
@@ -15527,9 +15667,11 @@ nav.tabs {
-ms-flex-align: center;
align-items: center;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold;
@@ -15544,10 +15686,19 @@ nav.tabs {
color: #fff; }
.entity--user--canonical .user-top .nav-tabs .nav-item .nav-link:hover {
background-color: #1e829a;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.entity--user--canonical .user-top .nav-tabs .nav-item .nav-link:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e829a;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.entity--user--canonical .user-top .nav-tabs .nav-item .nav-link:before {
content: '';
display: block;
@@ -15577,9 +15728,11 @@ nav.tabs {
-ms-flex-align: center;
align-items: center;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold;
@@ -15590,10 +15743,19 @@ nav.tabs {
color: #fff; }
.entity--user--canonical .user-top .user-actions--link a:hover {
background-color: #1e829a;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.entity--user--canonical .user-top .user-actions--link a:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e829a;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.profile-user-profile-view-mode h2 {
font-size: 30px;
@@ -15694,7 +15856,6 @@ nav.tabs {
.main-content nav.tabs ul .nav-item.active a {
background: unset; }
-.user--login section.main-content,
.user--register section.main-content,
.user--pass section.main-content {
display: -webkit-box;
@@ -15715,7 +15876,6 @@ nav.tabs {
-ms-flex-align: center;
align-items: center; }
-.user--login .block-system-main-block,
.user--register .block-system-main-block,
.user--pass .block-system-main-block {
display: -webkit-box;
@@ -15727,7 +15887,6 @@ nav.tabs {
-ms-flex-pack: center;
justify-content: center; }
-.user--login .nav-tabs,
.user--register .nav-tabs,
.user--pass .nav-tabs {
-webkit-box-pack: center;
@@ -15738,7 +15897,6 @@ nav.tabs {
.user-login-form,
.user-pass,
.user-register-form {
- max-width: 560px;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
@@ -15772,6 +15930,7 @@ nav.tabs {
.user-pass .password-parent,
.user-register-form .confirm-parent,
.user-register-form .password-parent {
+ max-width: unset;
min-width: unset;
overflow: unset; }
.user-login-form .form-submit,
@@ -15782,31 +15941,72 @@ nav.tabs {
.user-login-form .form-actions,
.user-pass .form-actions,
.user-register-form .form-actions {
- width: 100%; }
+ -webkit-box-align: center;
+ -webkit-align-items: center;
+ -ms-flex-align: center;
+ align-items: center;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ text-transform: uppercase; }
.user-login-form .form-actions input,
.user-pass .form-actions input,
.user-register-form .form-actions input {
+ border-width: 0;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
- background-color: #1294ca;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
+ background-color: #27C0FF;
color: #fff;
font-weight: bold; }
.user-login-form .form-actions input:hover,
.user-pass .form-actions input:hover,
.user-register-form .form-actions input:hover {
- background-color: #1e7697;
- text-decoration: none; }
+ background-color: #2e5d6d;
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.user-login-form .form-actions input:active,
.user-pass .form-actions input:active,
.user-register-form .form-actions input:active {
- background-color: #1e7697;
- text-decoration: none; }
- .user-login-form .social-login-buttons,
- .user-pass .social-login-buttons,
- .user-register-form .social-login-buttons {
- margin-top: 5px;
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
+ background-color: #2e5d6d;
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
+
+.user-pass,
+.user-register-form {
+ padding: 2.5rem 2.875rem;
+ max-width: 62.5rem;
+ background-color: #fff; }
+ .user-pass h1,
+ .user-register-form h1 {
+ font-style: normal;
+ font-weight: 600;
+ font-size: 1.5625rem;
+ line-height: 2.0625rem;
+ text-align: center;
+ margin-bottom: 2.5625rem; }
+ .user-pass .form-group,
+ .user-register-form .form-group {
+ margin-bottom: 0.625rem; }
+ .user-pass .form-control,
+ .user-register-form .form-control {
+ padding: 0.9375rem 0.875rem; }
+ .user-pass .form-group,
+ .user-register-form .form-group {
+ width: 100%; }
+ .user-pass .form-actions,
+ .user-register-form .form-actions {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
@@ -15815,39 +16015,14 @@ nav.tabs {
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
- -webkit-box-pack: center;
- -webkit-justify-content: center;
- -ms-flex-pack: center;
- justify-content: center; }
- .user-login-form .social-login-buttons img,
- .user-pass .social-login-buttons img,
- .user-register-form .social-login-buttons img {
- border-radius: 50%; }
-
-@media (max-width: 615px) {
- .user-login-form .form-actions {
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- -webkit-box-orient: horizontal;
+ -webkit-box-orient: vertical;
-webkit-box-direction: normal;
- -webkit-flex-direction: row;
- -ms-flex-direction: row;
- flex-direction: row;
- -webkit-box-pack: center;
- -webkit-justify-content: center;
- -ms-flex-pack: center;
- justify-content: center;
- -webkit-flex-wrap: wrap;
- -ms-flex-wrap: wrap;
- flex-wrap: wrap;
- width: 100%; }
- .user-login-form .form-actions .form-submit {
- -webkit-box-flex: 1;
- -webkit-flex: 1 0 100%;
- -ms-flex: 1 0 100%;
- flex: 1 0 100%; } }
+ -webkit-flex-direction: column;
+ -ms-flex-direction: column;
+ flex-direction: column; }
+ .user-pass .form-actions input,
+ .user-register-form .form-actions input {
+ width: 50%; }
.node--edit-form--main {
float: unset;
@@ -15855,9 +16030,11 @@ nav.tabs {
padding-right: 0; }
.node--edit-form--main input[type="submit"] {
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: transparent;
color: #fff;
font-weight: bold;
@@ -15867,10 +16044,19 @@ nav.tabs {
transition: background-color 0.5s ease-in-out, color 0.5s ease-in-out; }
.node--edit-form--main input[type="submit"]:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form--main input[type="submit"]:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form--main input[type="submit"]:hover {
color: #fff; }
.node--edit-form--main input[type="text"] {
@@ -15883,18 +16069,29 @@ nav.tabs {
padding: 1px 14px;
font-size: 16px;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold; }
.node--edit-form--main button:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form--main button:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form--main .details-wrapper {
position: relative; }
.node--edit-form--main .details-wrapper label {
@@ -15906,18 +16103,29 @@ nav.tabs {
height: unset;
font-size: 14px;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold; }
.node--edit-form--main .details-wrapper .js-form-wrapper .form-submit:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form--main .details-wrapper .js-form-wrapper .form-submit:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form--main .form-item-field-category label {
font-size: 16px; }
@@ -15945,20 +16153,31 @@ nav.tabs {
.node--edit-form .field--widget-moderation-state-buttons > div .form-control:disabled,
.node--edit-form .field--widget-moderation-state-buttons > div .form-control[readonly] {
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold; }
.node--edit-form .field--widget-moderation-state-buttons > div .form-control:disabled:hover,
.node--edit-form .field--widget-moderation-state-buttons > div .form-control[readonly]:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form .field--widget-moderation-state-buttons > div .form-control:disabled:active,
.node--edit-form .field--widget-moderation-state-buttons > div .form-control[readonly]:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form--footer {
float: unset;
@@ -15981,18 +16200,29 @@ nav.tabs {
height: unset;
margin-right: 10px;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold; }
.node--edit-form--footer .form-group input:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.node--edit-form--footer .form-group input:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
@media (max-width: 530px) {
.node--edit-form .field--widget-moderation-state-buttons > div input {
@@ -16294,9 +16524,11 @@ nav.tabs {
.view-frontpage .view-filters .form-row .frontpage-add-idea-button {
margin-left: auto;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #27C0FF;
color: #fff;
font-weight: bold;
@@ -16305,10 +16537,19 @@ nav.tabs {
padding: 0.6em 2.5em; }
.view-frontpage .view-filters .form-row .frontpage-add-idea-button:hover {
background-color: #5eaed2;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.view-frontpage .view-filters .form-row .frontpage-add-idea-button:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #5eaed2;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.view-frontpage .view-filters .form-row .frontpage-add-idea-button:before {
content: '';
display: inline-block;
@@ -16539,7 +16780,6 @@ nav.tabs {
display: none; }
.teaser-view-mode fieldset select,
.view--user-admin-people--community-page fieldset select {
- margin-bottom: 5px;
border: 1px solid #C6CDD0;
border-radius: 4px;
-webkit-appearance: none;
@@ -16564,14 +16804,13 @@ nav.tabs {
border: 0.8px solid #D0D6DC;
border-radius: 30px;
background: #E8E8E9;
- margin-top: 0;
- margin-bottom: 5px; }
+ margin-top: 0; }
.teaser-view-mode .form-item-search label,
.view--user-admin-people--community-page .form-item-search label {
display: none; }
.teaser-view-mode .form-item-search input,
.view--user-admin-people--community-page .form-item-search input {
- padding: 18px 3rem 18px 18px;
+ padding: 0.5rem 1.25rem;
background: transparent;
border: none;
margin: 0; }
@@ -16703,7 +16942,8 @@ nav.tabs {
content: ": "; }
.node--view-mode-teaser .block-openideal-idea-info-block .idea-information--list__item--value {
margin-right: 5px;
- font-size: 14px; }
+ font-size: 14px;
+ margin-bottom: 0; }
.node--view-mode-teaser .block-openideal-idea-info-block .idea-information--list__item--value .challenge-status--deadline {
font-size: 14px; }
.node--view-mode-teaser .block-field-blocknodechallengetitle a,
@@ -17024,9 +17264,11 @@ nav.tabs {
.openideal-statistics-date-select-form .form-submit {
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold;
@@ -17034,10 +17276,19 @@ nav.tabs {
margin-bottom: 15px; }
.openideal-statistics-date-select-form .form-submit:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.openideal-statistics-date-select-form .form-submit:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.reports-filters {
display: -webkit-box;
@@ -17197,18 +17448,29 @@ nav.tabs {
-ms-flex-preferred-size: 10%;
flex-basis: 10%;
border-radius: 25px;
- -webkit-transition: background-color 0.5s ease-in-out;
- -o-transition: background-color 0.5s ease-in-out;
- transition: background-color 0.5s ease-in-out;
+ -webkit-transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ transition: background-color 0.5s ease-in-out, -webkit-transform .5s;
+ -o-transition: background-color 0.5s ease-in-out, -o-transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s;
+ transition: background-color 0.5s ease-in-out, transform .5s, -webkit-transform .5s, -o-transform .5s;
background-color: #1294ca;
color: #fff;
font-weight: bold; }
.field--widget-openideal-user-entity-browser-single-file input:hover {
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.field--widget-openideal-user-entity-browser-single-file input:active {
+ -webkit-transform: scale(0.9);
+ -o-transform: scale(0.9);
+ transform: scale(0.9);
background-color: #1e7697;
- text-decoration: none; }
+ text-decoration: none;
+ -webkit-transform: scale(1.005);
+ -o-transform: scale(1.005);
+ transform: scale(1.005); }
.idea-statistics-and-status-block--status {
position: relative;
@@ -17300,6 +17562,16 @@ nav.tabs {
.idea-workflow-full {
color: #828282;
text-transform: capitalize; }
+ .idea-workflow-full .list-group {
+ -webkit-box-orient: vertical;
+ -webkit-box-direction: normal;
+ -webkit-flex-direction: column;
+ -ms-flex-direction: column;
+ flex-direction: column;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex; }
.idea-workflow-full--group-title {
margin-bottom: 18.5px;
font-weight: bold;
@@ -17509,6 +17781,264 @@ nav.tabs {
background: -o-linear-gradient(top, #676C72 0.01%, #676C72 24.75%, #1294CA 25.28%, #1294CA 45.54%, #1EBCA1 48.73%, #1EBCA1 67.12%, #C7D2EB 67.39%, #C7D2EB 100%);
background: linear-gradient(180deg, #676C72 0.01%, #676C72 24.75%, #1294CA 25.28%, #1294CA 45.54%, #1EBCA1 48.73%, #1EBCA1 67.12%, #C7D2EB 67.39%, #C7D2EB 100%); }
+.user-login-form {
+ padding-bottom: calc(1rem + 2.5rem); }
+ .user-login-form--container {
+ background-color: #fff;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex; }
+ .user-login-form--container--title {
+ font-style: normal;
+ font-weight: 600;
+ font-size: 1.5625rem;
+ line-height: 2.0625rem;
+ text-align: center;
+ margin-bottom: 2.5625rem; }
+ .user-login-form--container--left {
+ position: relative;
+ padding: 2.5rem 2.875rem;
+ width: 32.625rem; }
+ .user-login-form--container--left__social-login-buttons .social-auth {
+ margin-bottom: 0.75rem;
+ background: #FFFFFF;
+ border: 1px solid #D0D6DC;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box;
+ border-radius: 60px;
+ padding: 1.125rem;
+ position: relative;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-pack: center;
+ -webkit-justify-content: center;
+ -ms-flex-pack: center;
+ justify-content: center; }
+ .user-login-form--container--left__social-login-buttons .social-auth--name {
+ font-family: "Assistant", Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ font-style: normal;
+ font-weight: 600;
+ font-size: 0.9375rem;
+ line-height: 1.25rem;
+ color: #343352; }
+ .user-login-form--container--left__social-login-buttons .social-auth--icon-wrapper {
+ position: absolute;
+ width: 34px;
+ -webkit-box-pack: center;
+ -webkit-justify-content: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ left: 1.25rem;
+ top: 50%;
+ -webkit-transform: translateY(-50%);
+ -o-transform: translateY(-50%);
+ transform: translateY(-50%);
+ margin-right: 0.625rem; }
+ .user-login-form--container--left__social-login-buttons .social-auth--icon-wrapper::after {
+ content: '';
+ width: 1px;
+ height: 100%;
+ display: block;
+ background: #D0D6DC;
+ position: absolute;
+ right: -0.75rem;
+ top: 0; }
+ .user-login-form--container--left__or {
+ margin: 10px 0;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex; }
+ .user-login-form--container--left__or--line {
+ -webkit-box-flex: 1;
+ -webkit-flex-grow: 1;
+ -ms-flex-positive: 1;
+ flex-grow: 1;
+ -webkit-flex-shrink: 1;
+ -ms-flex-negative: 1;
+ flex-shrink: 1;
+ background-color: #dbdbdb;
+ height: 1px;
+ position: relative;
+ top: .45em; }
+ .user-login-form--container--left__or--or {
+ color: #8e8e8e;
+ -webkit-box-flex: 0;
+ -webkit-flex-grow: 0;
+ -ms-flex-positive: 0;
+ flex-grow: 0;
+ -webkit-flex-shrink: 0;
+ -ms-flex-negative: 0;
+ flex-shrink: 0;
+ font-size: 13px;
+ font-weight: 600;
+ line-height: 15px;
+ margin: 0 18px;
+ text-transform: uppercase; }
+ .user-login-form--container--right {
+ width: 32.625rem;
+ color: #fff;
+ margin-bottom: 0;
+ position: relative;
+ background: #26282E;
+ overflow: hidden; }
+ .user-login-form--container--right__text {
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex; }
+ .user-login-form--container--right__text--section__first {
+ z-index: 999;
+ padding: 2.375rem; }
+ .user-login-form--container--right__text--section__first ul {
+ list-style: none;
+ padding: 0;
+ margin: 0; }
+ .user-login-form--container--right__text--section__first li {
+ padding-left: 0.8125rem;
+ text-indent: -.7em;
+ margin-bottom: 1.0625rem;
+ font-size: 1.25rem;
+ line-height: 1.625rem; }
+ .user-login-form--container--right__text--section__first li::before {
+ content: "• ";
+ font-size: 1.5625rem;
+ color: #27C0FF; }
+ .user-login-form--container--right__text--section__first h2 {
+ font-style: normal;
+ font-weight: bold;
+ font-size: 3.25rem;
+ line-height: 60px;
+ letter-spacing: 0.01em; }
+ .user-login-form--container--right__text--section__first h2 span {
+ display: inline-block;
+ position: relative; }
+ .user-login-form--container--right__text--section__first h2 em {
+ color: white; }
+ .user-login-form--container--right__text--section__first h2 em + svg {
+ position: absolute;
+ left: 0;
+ bottom: -40%;
+ opacity: 1; }
+ .user-login-form--container--right__text--section__first h2 em + svg path {
+ stroke-dashoffset: 0; }
+ .user-login-form--container--right__text--section__first h2 svg {
+ pointer-events: none;
+ -webkit-transition: 0.5s;
+ -o-transition: 0.5s;
+ transition: 0.5s; }
+ .user-login-form--container--right__text--section__first h2 path {
+ -webkit-transition: stroke-dasharray 0.5s, stroke-dashoffset 0.5s, opacity 0.5s;
+ -o-transition: stroke-dasharray 0.5s, stroke-dashoffset 0.5s, opacity 0.5s;
+ transition: stroke-dasharray 0.5s, stroke-dashoffset 0.5s, opacity 0.5s; }
+ .user-login-form--container--right__text--section__first h2 path:last-child {
+ opacity: 0.2; }
+ .user-login-form--container--right__text--section__second {
+ position: absolute;
+ bottom: 0; }
+ .user-login-form--container--right__text--section__second::after {
+ content: '';
+ position: absolute;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ background: -webkit-linear-gradient(273.41deg, #262930 7.81%, rgba(38, 41, 48, 0) 40.61%);
+ background: -o-linear-gradient(273.41deg, #262930 7.81%, rgba(38, 41, 48, 0) 40.61%);
+ background: linear-gradient(176.59deg, #262930 7.81%, rgba(38, 41, 48, 0) 40.61%); }
+ .user-login-form--container__bottom {
+ position: absolute;
+ bottom: -7.5rem;
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-orient: vertical;
+ -webkit-box-direction: normal;
+ -webkit-flex-direction: column;
+ -ms-flex-direction: column;
+ flex-direction: column;
+ -webkit-box-align: center;
+ -webkit-align-items: center;
+ -ms-flex-align: center;
+ align-items: center;
+ -webkit-box-pack: center;
+ -webkit-justify-content: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ left: 50%;
+ -webkit-transform: translateX(-50%);
+ -o-transform: translateX(-50%);
+ transform: translateX(-50%);
+ width: 19rem; }
+ .user-login-form--container__bottom--text {
+ font-weight: 600;
+ font-size: 1rem;
+ line-height: 1.3125rem;
+ color: #000; }
+ .user-login-form--container__bottom--text a {
+ color: #27C0FF; }
+ .user-login-form--container--actions {
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-align: center;
+ -webkit-align-items: center;
+ -ms-flex-align: center;
+ align-items: center;
+ width: 100%;
+ -webkit-box-pack: center;
+ -webkit-justify-content: center;
+ -ms-flex-pack: center;
+ justify-content: center; }
+ .user-login-form--container--actions .form-submit {
+ width: 50%; }
+ .user-login-form .form-control {
+ padding: 1.125rem 1rem; }
+
+@media (max-width: 83.125rem) {
+ .user-login-form--container--right, .user-login-form--container--left {
+ width: 25rem; } }
+
+@media (max-width: 53.75rem) {
+ .user-login-form--container--right {
+ display: none; }
+ .user-login-form--container--left {
+ width: auto; }
+ .user-login-form--container--left__social-login-buttons .social-auth {
+ padding: 0.875rem; } }
+
+@media (max-width: 26.375rem) {
+ .user-login-form--container--left {
+ padding: 0.875rem 0.875rem; }
+ .user-login-form--container--left__social-login-buttons {
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-pack: space-evenly;
+ -webkit-justify-content: space-evenly;
+ -ms-flex-pack: space-evenly;
+ justify-content: space-evenly; }
+ .user-login-form--container--left__social-login-buttons .social-auth--icon-wrapper {
+ position: static;
+ -webkit-transform: unset;
+ -o-transform: unset;
+ transform: unset;
+ margin: 0; }
+ .user-login-form--container--left__social-login-buttons .social-auth--icon-wrapper::after {
+ content: unset; }
+ .user-login-form--container--left__social-login-buttons .social-auth--name {
+ display: none; } }
+
.community-page .view-content {
display: -webkit-box;
display: -webkit-flex;
diff --git a/themes/openideal_theme/images/icons/facebook_icon.png b/themes/openideal_theme/images/icons/facebook_icon.png
new file mode 100644
index 000000000..e46972dfe
Binary files /dev/null and b/themes/openideal_theme/images/icons/facebook_icon.png differ
diff --git a/themes/openideal_theme/images/icons/github_icon.png b/themes/openideal_theme/images/icons/github_icon.png
new file mode 100644
index 000000000..cf959e89e
Binary files /dev/null and b/themes/openideal_theme/images/icons/github_icon.png differ
diff --git a/themes/openideal_theme/images/icons/google_icon.png b/themes/openideal_theme/images/icons/google_icon.png
new file mode 100644
index 000000000..33a2d26a8
Binary files /dev/null and b/themes/openideal_theme/images/icons/google_icon.png differ
diff --git a/themes/openideal_theme/js/global.js b/themes/openideal_theme/js/global.js
index 9ec071d23..b1e541401 100644
--- a/themes/openideal_theme/js/global.js
+++ b/themes/openideal_theme/js/global.js
@@ -175,6 +175,7 @@
var $this = $(this);
var $item = $('.votingapi-reaction-item', $this);
var $label = $('.votingapi-reaction-label', $this);
+
if ($('.radio input', $this).is(':checked')) {
$item.addClass('active');
$label.text(Drupal.t('Liked'));
diff --git a/themes/openideal_theme/openideal_theme.libraries.yml b/themes/openideal_theme/openideal_theme.libraries.yml
index 06f681af0..27ba5b63e 100644
--- a/themes/openideal_theme/openideal_theme.libraries.yml
+++ b/themes/openideal_theme/openideal_theme.libraries.yml
@@ -22,3 +22,12 @@ global-scripts:
- core/jquery
- core/drupal
- core/jquery.once
+
+underliner:
+ version: VERSION
+ js:
+ js/underliner.js: {}
+ dependencies:
+ - core/jquery
+ - core/drupal
+ - core/jquery.once
diff --git a/themes/openideal_theme/openideal_theme.theme b/themes/openideal_theme/openideal_theme.theme
index abfff6ea7..008b93060 100644
--- a/themes/openideal_theme/openideal_theme.theme
+++ b/themes/openideal_theme/openideal_theme.theme
@@ -5,7 +5,9 @@
* Functions to support theming in the SASS Starterkit subtheme.
*/
+use Drupal\Component\Render\FormattableMarkup;
use Drupal\Core\Form\FormStateInterface;
+use Drupal\Core\Link;
use Drupal\Core\StringTranslation\TranslatableMarkup;
use Drupal\Core\Url;
use Drupal\node\NodeInterface;
@@ -68,16 +70,32 @@ function openideal_theme_preprocess_html(&$variables) {
*/
function openideal_theme_preprocess_page(&$variables) {
$route_match = \Drupal::routeMatch();
+ $route_name = $route_match->getRouteName();
$node = $route_match->getParameter('node');
if ($node instanceof NodeInterface) {
$variables['node_type'] = $node->bundle();
}
- if ($route_match->getRouteName() == 'view.frontpage.front_page'
- || $route_match->getRouteName() == 'entity.user.canonical'
- || $route_match->getRouteName() == 'view.news.all_news_page') {
+ $activity_pages = [
+ 'view.frontpage.front_page',
+ 'entity.user.canonical',
+ 'view.news.all_news_page',
+ ];
+
+ if (in_array($route_name, $activity_pages)) {
$variables['is_activity_page'] = TRUE;
}
+
+ if ($route_match->getRouteName() == 'entity.node.canonical' &&
+ $route_match->getParameter('node')->bundle() == 'idea' &&
+ \Drupal::request()->query->has('suggested-idea')) {
+ $link = Link::createFromRoute(t('create an idea by yourself'), 'node.add', ['node_type' => 'idea'])->toString();
+ $message = new FormattableMarkup('' . t('This idea might be similar to the one you were about to create.') . '
+ ' . t('Consider joining this idea as a follower or co-author.') . '
+ ' . t('Ideas have better chance in being complete, and to move on to execution, if a large group of people collaborates on making the idea better.') . '
+ ' . t('If you want, and whenever you want, you can always go ahead and @create') . '
', ['@create' => $link]);
+ \Drupal::messenger()->addMessage($message);
+ }
}
/**
@@ -187,3 +205,19 @@ function openideal_theme_preprocess_image(&$variables) {
$variables['attributes']['title'] = $variables['alt'];
}
}
+
+/**
+ * Implements hook_preprocess_HOOK().
+ */
+function openideal_theme_preprocess_message__user_mention(&$variables) {
+ // In case the user is not viewing its page,
+ // its necessary to change the partial template.
+ $variables['#cache']['contexts'][] = 'user.is_user_profile_page';
+ if (\Drupal::routeMatch()->getRouteName() == 'entity.user.canonical' &&
+ \Drupal::currentUser()->id() !== \Drupal::routeMatch()->getParameter('user')->id()) {
+ $partial = $variables['elements']['#message']->getText(\Drupal::languageManager()->getCurrentLanguage()->getId(), 3);
+ if (!empty($partial)) {
+ $variables['content']['partial_0']['#markup'] = current($partial);
+ }
+ }
+}
diff --git a/themes/openideal_theme/scss/_functions.scss b/themes/openideal_theme/scss/_functions.scss
new file mode 100644
index 000000000..153ae7421
--- /dev/null
+++ b/themes/openideal_theme/scss/_functions.scss
@@ -0,0 +1,4 @@
+// Convert px into rem.
+@function size($target) {
+ @return ($target / 16) * 1rem;
+}
diff --git a/themes/openideal_theme/scss/_import.scss b/themes/openideal_theme/scss/_import.scss
index 3823a5c0a..33c3b7e8e 100644
--- a/themes/openideal_theme/scss/_import.scss
+++ b/themes/openideal_theme/scss/_import.scss
@@ -1,6 +1,8 @@
/* IMPORTS */
//@import url(font-awesome.min.css);
+// functions
+@import "functions";
// variables
@import "variables";
// typography
diff --git a/themes/openideal_theme/scss/_mixins.scss b/themes/openideal_theme/scss/_mixins.scss
index a8235fab3..ccc67c868 100644
--- a/themes/openideal_theme/scss/_mixins.scss
+++ b/themes/openideal_theme/scss/_mixins.scss
@@ -19,16 +19,20 @@ $value in $theme-colors {
@mixin btn-theme($btn-color, $active-color) {
border-radius: 25px;
- transition: background-color 0.5s ease-in-out;
+ transition: background-color 0.5s ease-in-out, transform .5s;
background-color: $btn-color;
color: $white;
font-weight: $font-weight-bold;
+
&:hover {
background-color: $active-color;
text-decoration: none;
+ transform: scale(1.005);
}
&:active {
+ transform: scale(0.9);
background-color: $active-color;
text-decoration: none;
+ transform: scale(1.005);
}
}
diff --git a/themes/openideal_theme/scss/components/_default_user_forms.scss b/themes/openideal_theme/scss/components/_default_user_forms.scss
index 3422936b2..322383a80 100644
--- a/themes/openideal_theme/scss/components/_default_user_forms.scss
+++ b/themes/openideal_theme/scss/components/_default_user_forms.scss
@@ -1,4 +1,3 @@
-.user--login,
.user--register,
.user--pass {
section.main-content {
@@ -21,7 +20,6 @@
.user-login-form,
.user-pass,
.user-register-form {
- max-width: 560px;
display: flex;
flex-direction: column;
align-items: center;
@@ -33,6 +31,7 @@
.confirm-parent,
.password-parent {
+ max-width: unset;
min-width: unset;
overflow: unset;
}
@@ -43,33 +42,50 @@
}
.form-actions {
- width: 100%;
+ align-items: center;
+ display: flex;
+ text-transform: uppercase;
input {
- @include btn-theme($btn-dark, #1e7697);
+ border-width: 0;
+ @include btn-theme($btn-light, #2e5d6d);
}
}
- .social-login-buttons {
- margin-top: 5px;
- display: flex;
- align-items: center;
- justify-content: center;
+}
- img {
- border-radius: 50%;
- }
+.user-pass,
+.user-register-form {
+ padding: size(40) size(46);
+ max-width: size(1000);
+ background-color: $white;
+
+ h1 {
+ font-style: normal;
+ font-weight: 600;
+ font-size: size(25);
+ line-height: size(33);
+ text-align: center;
+ margin-bottom: size(41);
}
-}
-@media (max-width: 615px) {
- .user-login-form .form-actions {
- display: flex;
- flex-direction: row;
- justify-content: center;
- flex-wrap: wrap;
+ .form-group {
+ margin-bottom: size(10);
+ }
+
+ .form-control {
+ padding: size(15) size(14);
+ }
+
+ .form-group {
width: 100%;
+ }
- .form-submit {
- flex: 1 0 100%;
+ .form-actions {
+ display: flex;
+ align-items: center;
+ flex-direction: column;
+
+ input {
+ width: 50%;
}
}
-}
+}
\ No newline at end of file
diff --git a/themes/openideal_theme/scss/components/_form.scss b/themes/openideal_theme/scss/components/_form.scss
index 5c9ff4cfb..8e00dcf50 100644
--- a/themes/openideal_theme/scss/components/_form.scss
+++ b/themes/openideal_theme/scss/components/_form.scss
@@ -4,3 +4,16 @@
@include btn-theme($btn-dark, #1e7697);
}
}
+
+.form-control {
+ border: 1px solid #D0D6DC;
+ border-radius: unset;
+ line-height: size(18);
+ height: unset;
+
+ &::placeholder {
+ font-family: "Assistant", Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ font-size: size(16);
+ display: block;
+ }
+}
diff --git a/themes/openideal_theme/scss/components/_idea_workflow.scss b/themes/openideal_theme/scss/components/_idea_workflow.scss
index d55753538..b64a12c17 100644
--- a/themes/openideal_theme/scss/components/_idea_workflow.scss
+++ b/themes/openideal_theme/scss/components/_idea_workflow.scss
@@ -151,6 +151,11 @@
color: #828282;
text-transform: capitalize;
+ .list-group {
+ flex-direction: column;
+ display: flex;
+ }
+
&--group-title {
margin-bottom: 18.5px;
font-weight: $font-weight-bold;
diff --git a/themes/openideal_theme/scss/components/_import.scss b/themes/openideal_theme/scss/components/_import.scss
index 7185d07e3..9774cbc8a 100644
--- a/themes/openideal_theme/scss/components/_import.scss
+++ b/themes/openideal_theme/scss/components/_import.scss
@@ -1,3 +1,4 @@
+@import "item_list";
@import "page_title";
@import "statistics_block";
@import "form";
@@ -33,3 +34,5 @@
@import "alert";
@import "single_entity_browser_widget";
@import "idea_workflow";
+@import "login-form";
+
diff --git a/themes/openideal_theme/scss/components/_item_list.scss b/themes/openideal_theme/scss/components/_item_list.scss
new file mode 100644
index 000000000..5429e4cf0
--- /dev/null
+++ b/themes/openideal_theme/scss/components/_item_list.scss
@@ -0,0 +1,12 @@
+.list-group {
+ display: unset;
+ flex-direction: unset;
+}
+
+.list-group-item {
+ display: unset;
+ position: unset;
+ padding: unset;
+ border: unset;
+ background-color: unset;
+}
diff --git a/themes/openideal_theme/scss/components/_login-form.scss b/themes/openideal_theme/scss/components/_login-form.scss
new file mode 100644
index 000000000..8d640f4de
--- /dev/null
+++ b/themes/openideal_theme/scss/components/_login-form.scss
@@ -0,0 +1,285 @@
+.user-login-form {
+ padding-bottom: calc(#{size(16)} + #{size(40)});
+ &--container {
+ background-color: $white;
+ display: flex;
+
+ // Title
+ &--title {
+ font-style: normal;
+ font-weight: 600;
+ font-size: size(25);
+ line-height: size(33);
+ text-align: center;
+ margin-bottom: size(41);
+ }
+
+ // Left container with form
+ &--left {
+ position: relative;
+ padding: size(40) size(46);
+ width: size(522);
+
+ // Social login buttons
+ &__social-login-buttons {
+ .social-auth {
+ margin-bottom: size(12);
+ background: #FFFFFF;
+ border: 1px solid #D0D6DC;
+ box-sizing: border-box;
+ border-radius: 60px;
+ padding: size(18);
+ position: relative;
+ display: flex;
+ justify-content: center;
+
+ &--name {
+ font-family: "Assistant", Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ font-style: normal;
+ font-weight: 600;
+ font-size: size(15);
+ line-height: size(20);
+ color: #343352;
+ }
+
+ &--icon-wrapper {
+ position: absolute;
+ width: 34px;
+ justify-content: center;
+ display: flex;
+ left: size(20);
+ top: 50%;
+ transform: translateY(-50%);
+ margin-right: size(10);
+
+ &::after {
+ content: '';
+ width: 1px;
+ height: 100%;
+ display: block;
+ background: #D0D6DC;
+ position: absolute;
+ right: size(-12);
+ top: 0;
+ }
+ }
+
+ &--icon {
+
+ }
+ }
+ }
+
+ // Or "--- or ---"
+ &__or {
+ margin: 10px 0;
+ display: flex;
+ &--line {
+ flex-grow: 1;
+ flex-shrink: 1;
+ background-color: #dbdbdb;
+ height: 1px;
+ position: relative;
+ top: .45em;
+ }
+
+ &--or {
+ color: #8e8e8e;
+ flex-grow: 0;
+ flex-shrink: 0;
+ font-size: 13px;
+ font-weight: 600;
+ line-height: 15px;
+ margin: 0 18px;
+ text-transform: uppercase;
+ }
+ }
+ }
+
+ // Right section
+ &--right {
+ width: size(522);
+ color: $white;
+ margin-bottom: 0;
+ position: relative;
+ background: #26282E;
+ overflow: hidden;
+
+ &__text {
+ display: flex;
+
+ &--section__first {
+ z-index: 999;
+ padding: size(38);
+
+ ul {
+ list-style: none;
+ padding: 0;
+ margin: 0;
+ }
+
+ li {
+ padding-left: size(13);
+ text-indent: -.7em;
+ margin-bottom: size(17);
+ font-size: size(20);
+ line-height: size(26);
+ }
+
+ li::before {
+ content: "• ";
+ font-size: size(25);
+ color: #27C0FF;
+ }
+
+ h2 {
+ span {
+ display: inline-block;
+ position: relative;
+ }
+
+ em {
+ color: white;
+
+ & + svg {
+ position: absolute;
+ left: 0;
+ bottom: -40%;
+ opacity: 1;
+
+ path {
+ stroke-dashoffset: 0;
+ }
+ }
+ }
+
+ svg {
+ pointer-events: none;
+ transition: 0.5s;
+ //outline: solid 1px lightgrey;
+ }
+
+ path {
+ transition: stroke-dasharray 0.5s, stroke-dashoffset 0.5s, opacity 0.5s;
+
+ &:last-child {
+ opacity: 0.2;
+ }
+ }
+
+ font-style: normal;
+ font-weight: bold;
+ font-size: size(52);
+ line-height: 60px;
+ letter-spacing: 0.01em;
+ }
+ }
+
+ &--section__second {
+ position: absolute;
+ bottom: 0;
+ &::after {
+ content: '';
+ position: absolute;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ background: linear-gradient(176.59deg, #262930 7.81%, rgba(38, 41, 48, 0) 40.61%);
+ }
+ }
+ }
+ }
+
+ &__bottom {
+ position: absolute;
+ bottom: size(-120);
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+ left: 50%;
+ transform: translateX(-50%);
+ width: size(304);
+
+ &--text {
+ font-weight: 600;
+ font-size: size(16);
+ line-height: size(21);
+ color: $black;
+
+ a {
+ color: $btn-light;
+ }
+ }
+ }
+
+ // Actions
+ &--actions {
+ display: flex;
+ align-items: center;
+ width: 100%;
+ justify-content: center;
+
+ .form-submit {
+ width: 50%;
+ }
+ }
+ }
+
+ .form-control {
+ padding: size(18) size(16);
+ }
+}
+
+@media (max-width: size(1330)) {
+ .user-login-form--container {
+ &--right,
+ &--left {
+ width: size(400);
+ }
+ }
+}
+
+@media (max-width: size(860)) {
+ .user-login-form--container {
+ &--right {
+ display: none;
+ }
+
+ &--left {
+ width: auto;
+ &__social-login-buttons .social-auth {
+ padding: size(14);
+ }
+ }
+ }
+}
+
+@media (max-width: size(422)) {
+ .user-login-form--container {
+ &--left {
+ padding: size(14) size(14);
+
+ &__social-login-buttons {
+ display: flex;
+ justify-content: space-evenly;
+
+ .social-auth {
+ &--icon-wrapper {
+ position: static;
+ transform: unset;
+ margin: 0;
+
+ &::after {
+ content: unset;
+ }
+ }
+ &--name {
+ display: none;
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/themes/openideal_theme/scss/components/_site-wide-statistics.scss b/themes/openideal_theme/scss/components/_site-wide-statistics.scss
index d1007427f..abce9b72f 100644
--- a/themes/openideal_theme/scss/components/_site-wide-statistics.scss
+++ b/themes/openideal_theme/scss/components/_site-wide-statistics.scss
@@ -1,58 +1,66 @@
-.site-wide-statistics-block {
- &--list {
- display: flex;
- list-style: none;
-
- &__item {
+.block-openideal-statistics.block-site-wide-statistics-block {
+ .idea-statistics-block {
+ &--list {
display: flex;
- flex-direction: column;
- align-items: center;
- margin-right: 5px;
- flex-basis: 75px;
- box-shadow: 0 1px 5px rgba(0,0,0,0.03), 0 3px 6px rgba(0,0,0,0.1);
- border-radius: 2px;
- padding: 12px 6px 0;
- background-color: #fff;
- min-width: 77px;
-
- &--bottom {
+ list-style: none;
+
+ &__item {
display: flex;
flex-direction: column;
align-items: center;
- text-transform: uppercase;
- }
+ margin-right: 5px;
+ flex-basis: 75px;
+ box-shadow: 0 1px 5px rgba(0,0,0,0.03), 0 3px 6px rgba(0,0,0,0.1);
+ border-radius: 2px;
+ padding: 12px 6px 0;
+ background-color: #fff;
+ min-width: 77px;
- .item-svg {
- width: 32px;
- height: 32px;
- margin-bottom: 6px;
- }
+ &--bottom {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ text-transform: uppercase;
+ }
- &--statistics_tag {
- background: url('../images/icons/statistics_tag.svg') no-repeat center center;
- }
+ .item-svg {
+ width: 32px;
+ height: 32px;
+ margin-bottom: 6px;
+ margin-right: 0;
+ }
- &--members_tag {
- background: url('../images/icons/members_tag.svg') no-repeat center center;
- }
+ &--statistics_tag {
+ background: url('../images/icons/statistics_tag.svg') no-repeat center center;
+ }
- &--comment_tag {
- background: url('../images/icons/comment_tag.svg') no-repeat center center;
- }
+ &--members_tag {
+ background: url('../images/icons/members_tag.svg') no-repeat center center;
+ }
- &--like_tag {
- background: url('../images/icons/like_tag.svg') no-repeat center center;
- }
+ &--comment_tag {
+ background: url('../images/icons/comment_tag.svg') no-repeat center center;
+ }
- p {
- line-height: 1;
- letter-spacing: -0.5px;
- font-size: 15px;
- }
+ &--like_tag {
+ background: url('../images/icons/like_tag.svg') no-repeat center center;
+ }
+
+ p {
+ line-height: 1;
+ letter-spacing: -0.5px;
+ font-size: 15px;
+ }
+
+ &--title {
+ margin-bottom: 1rem;
+ }
- &--count {
- font-weight: bold;
- margin-bottom: 1px;
+ &--count {
+ margin-right: 0;
+ font-weight: bold;
+ margin-bottom: 1px;
+ }
}
}
}
diff --git a/themes/openideal_theme/scss/components/_teaser.scss b/themes/openideal_theme/scss/components/_teaser.scss
index 38a053294..7e18eec9a 100644
--- a/themes/openideal_theme/scss/components/_teaser.scss
+++ b/themes/openideal_theme/scss/components/_teaser.scss
@@ -18,7 +18,6 @@
}
select {
- margin-bottom: 5px;
border: 1px solid #C6CDD0;
border-radius: 4px;
appearance: none;
@@ -45,14 +44,13 @@
border-radius: 30px;
background: #E8E8E9;
margin-top: 0;
- margin-bottom: 5px;
label {
display: none;
}
input {
- padding: 18px 3rem 18px 18px;
+ padding: size(8) size(20);
background: transparent;
border: none;
margin: 0;
@@ -182,7 +180,7 @@
&--value {
margin-right: 5px;
font-size: 14px;
-
+ margin-bottom: 0;
.challenge-status--deadline {
font-size: 14px;
}
diff --git a/themes/openideal_theme/templates/components/login-with.html.twig b/themes/openideal_theme/templates/components/login-with.html.twig
new file mode 100755
index 000000000..ff65d2bed
--- /dev/null
+++ b/themes/openideal_theme/templates/components/login-with.html.twig
@@ -0,0 +1,16 @@
+{% set module = 'social-auth' %}
+
+{{ attach_library('social_auth/auth-icons') }}
+
+{% for social_network in social_networks %}
+ {% if destination %}
+
+ {% else %}
+
+ {% endif %}
+
+
![{{ social_network.name }} {{ social_network.name }}]({{ base_path }}{{ social_network.img_path }})
+
+ {{ social_network.name }}
+
+{% endfor %}