diff --git a/.gitignore b/.gitignore index 629b1bc6..c719e58b 100644 --- a/.gitignore +++ b/.gitignore @@ -13,4 +13,12 @@ nbproject /sites/default/_settings.php /profiles/openideal/sublime-openideal.sublime-project /profiles/openideal/sublime-openideal.sublime-workspace -/.gitk-tmp.11456/ \ No newline at end of file +/.gitk-tmp.11456/ + +# Ignore paths that composer generates +/core +/vendor +/libraries +/modules/contrib +/themes/contrib +composer.lock diff --git a/README.md b/README.md index fcbcac6e..aa0c93cd 100644 --- a/README.md +++ b/README.md @@ -21,10 +21,16 @@ OpenideaL includes tools for the website managers which allow them to identify * OI is based on Drupal, and therefore it is modular, and allows growth and adaptation to the organization’s specific needs. These adaptations may include a unique design, polls and surveys, interfacing with external applications or adapting the interface to a range of devices ans apis. +## Prerequisites: +Since OpenideaL relies on [Drupal](https://www.drupal.org/) and is subject to its system requirements, it is recommended ensuring that you have satisfied the [Drupal System Requirements](https://www.drupal.org/docs/system-requirements) before moving forward. + ## Build OpenideaL is super easy to install. The following composer command will install the full codebase, together with all the required dependencies and libraries: +- Please use PHP 7.4, don't use PHP 8 or 8.1 it won't work. +- Recommended composer 2 - really faster and uses a lot less memory. (It has been tested with composer 1, 2.0 - 2.3.5) + ``` composer create-project linnovate/openideal-composer openideal ``` @@ -52,17 +58,20 @@ When at the `web` directory, run the following: - Change `dbuser@127.0.0.1/db_name` with your DB settings - The last bit - `idea` is the name of the profile -## Update +## Docker Installation with Docker4Drupal by Wodby +[Follow the guide](https://github.com/linnovate/openideal/wiki/Install-OpenideaL-with-Docker4Drupal-by-Wodby) + +## Update to new version of OpenideaL At any point you can run -`composer require linnovate/openideal:[version-number]` where `[version number]` is the desired tag. -`composer update` -`drush updb` -`drush cr` -`drush cim` +- `composer require linnovate/openideal:[version-number]` where `[version number]` is the desired tag. +- `drush updb` +- `drush cr` +- `drush cim` -To upgrade Drupal core version run +To upgrade Drupal core version run +**Be aware upgrade to Drupal 9 will not work**, for now OpenideaL doesn't support it `composer update drupal/core 'drupal/core-*' --with-dependencies` , then run `drush updb`. diff --git a/composer.json b/composer.json old mode 100644 new mode 100755 index 72d59865..43c0a2f9 --- a/composer.json +++ b/composer.json @@ -18,10 +18,10 @@ "type": "package", "package": { "name": "ckeditor/mentions", - "version": "4.14.1", + "version": "4.17.2", "type": "drupal-library", "dist": { - "url": "https://download.ckeditor.com/mentions/releases/mentions_4.14.1.zip", + "url": "https://download.ckeditor.com/mentions/releases/mentions_4.17.2.zip", "type": "zip" } } @@ -30,10 +30,10 @@ "type": "package", "package": { "name": "ckeditor/autocomplete", - "version": "4.14.1", + "version": "4.17.2", "type": "drupal-library", "dist": { - "url": "https://download.ckeditor.com/autocomplete/releases/autocomplete_4.14.1.zip", + "url": "https://download.ckeditor.com/autocomplete/releases/autocomplete_4.17.2.zip", "type": "zip" } } @@ -42,10 +42,10 @@ "type": "package", "package": { "name": "ckeditor/textmatch", - "version": "4.14.1", + "version": "4.17.2", "type": "drupal-library", "dist": { - "url": "https://download.ckeditor.com/textmatch/releases/textmatch_4.14.1.zip", + "url": "https://download.ckeditor.com/textmatch/releases/textmatch_4.17.2.zip", "type": "zip" } } @@ -54,10 +54,10 @@ "type": "package", "package": { "name": "ckeditor/textwatcher", - "version": "4.14.1", + "version": "4.17.2", "type": "drupal-library", "dist": { - "url": "https://download.ckeditor.com/textwatcher/releases/textwatcher_4.14.1.zip", + "url": "https://download.ckeditor.com/textwatcher/releases/textwatcher_4.17.2.zip", "type": "zip" } } @@ -66,10 +66,10 @@ "type": "package", "package": { "name": "ckeditor/ajax", - "version": "4.14.1", + "version": "4.17.2", "type": "drupal-library", "dist": { - "url": "https://download.ckeditor.com/ajax/releases/ajax_4.14.1.zip", + "url": "https://download.ckeditor.com/ajax/releases/ajax_4.17.2.zip", "type": "zip" } } @@ -78,10 +78,10 @@ "type": "package", "package": { "name": "ckeditor/xml", - "version": "4.14.1", + "version": "4.17.2", "type": "drupal-library", "dist": { - "url": "https://download.ckeditor.com/xml/releases/xml_4.14.1.zip", + "url": "https://download.ckeditor.com/xml/releases/xml_4.17.2.zip", "type": "zip" } } @@ -90,10 +90,10 @@ "type": "package", "package": { "name": "ckeditor/embed", - "version": "4.14.1", + "version": "4.17.2", "type": "drupal-library", "dist": { - "url": "https://download.ckeditor.com/embed/releases/embed_4.14.1.zip", + "url": "https://download.ckeditor.com/embed/releases/embed_4.17.2.zip", "type": "zip" } } @@ -102,10 +102,10 @@ "type": "package", "package": { "name": "ckeditor/embedsemantic", - "version": "4.14.1", + "version": "4.17.2", "type": "drupal-library", "dist": { - "url": "https://download.ckeditor.com/embedsemantic/releases/embedsemantic_4.14.1.zip", + "url": "https://download.ckeditor.com/embedsemantic/releases/embedsemantic_4.17.2.zip", "type": "zip" } } @@ -114,10 +114,10 @@ "type": "package", "package": { "name": "ckeditor/embedbase", - "version": "4.14.1", + "version": "4.17.2", "type": "drupal-library", "dist": { - "url": "https://download.ckeditor.com/embedbase/releases/embedbase_4.14.1.zip", + "url": "https://download.ckeditor.com/embedbase/releases/embedbase_4.17.2.zip", "type": "zip" } } @@ -126,10 +126,10 @@ "type": "package", "package": { "name": "ckeditor/autoembed", - "version": "4.14.1", + "version": "4.17.2", "type": "drupal-library", "dist": { - "url": "https://download.ckeditor.com/autoembed/releases/autoembed_4.14.1.zip", + "url": "https://download.ckeditor.com/autoembed/releases/autoembed_4.17.2.zip", "type": "zip" } } @@ -138,10 +138,10 @@ "type": "package", "package": { "name": "ckeditor/autolink", - "version": "4.14.1", + "version": "4.17.2", "type": "drupal-library", "dist": { - "url": "https://download.ckeditor.com/autolink/releases/autolink_4.14.1.zip", + "url": "https://download.ckeditor.com/autolink/releases/autolink_4.17.2.zip", "type": "zip" } } @@ -150,10 +150,10 @@ "type": "package", "package": { "name": "ckeditor/notification", - "version": "4.14.1", + "version": "4.17.2", "type": "drupal-library", "dist": { - "url": "https://download.ckeditor.com/notification/releases/notification_4.14.1.zip", + "url": "https://download.ckeditor.com/notification/releases/notification_4.17.2.zip", "type": "zip" } } @@ -162,37 +162,76 @@ "type": "package", "package": { "name": "ckeditor/notificationaggregator", - "version": "4.14.1", + "version": "4.17.2", "type": "drupal-library", "dist": { - "url": "https://download.ckeditor.com/notificationaggregator/releases/notificationaggregator_4.14.1.zip", + "url": "https://download.ckeditor.com/notificationaggregator/releases/notificationaggregator_4.17.2.zip", "type": "zip" } } - } + }, + { + "type": "package", + "package": { + "name": "ckeditor/fakeobjects", + "version": "4.17.2", + "type": "drupal-library", + "dist": { + "url": "https://download.ckeditor.com/fakeobjects/releases/fakeobjects_4.17.2.zip", + "type": "zip" + } + } + }, + { + "type": "package", + "package": { + "name": "ckeditor/link", + "version": "4.17.2", + "type": "drupal-library", + "dist": { + "url": "https://download.ckeditor.com/link/releases/link_4.17.2.zip", + "type": "zip" + } + } + }, + { + "type": "package", + "package": { + "name": "ckeditor/emojione", + "version": "1.0.2", + "type": "drupal-library", + "dist": { + "url": "https://download.ckeditor.com/emojione/releases/emojione_1.0.2.zip", + "type": "zip" + } + } + } ], "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", + "ckeditor/ajax": "4.17.2", + "ckeditor/autocomplete": "4.17.2", + "ckeditor/autoembed": "4.17.2", + "ckeditor/autolink": "4.17.2", + "ckeditor/embed": "4.17.2", + "ckeditor/embedbase": "4.17.2", + "ckeditor/embedsemantic": "4.17.2", + "ckeditor/emojione": "1.0.2", + "ckeditor/fakeobjects": "4.17.2", + "ckeditor/link": "4.17.2", + "ckeditor/mentions": "4.17.2", + "ckeditor/notification": "4.17.2", + "ckeditor/notificationaggregator": "4.17.2", + "ckeditor/textmatch": "4.17.2", + "ckeditor/textwatcher": "4.17.2", + "ckeditor/xml": "4.17.2", "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#4b0c423", + "drupal/ajax_comments": "1.0-beta4", "drupal/allowed_formats": "^1.2", "drupal/avatars": "^1.1", "drupal/better_exposed_filters": "^4.0", @@ -207,6 +246,7 @@ "drupal/domain_registration": "^1.4", "drupal/dropzonejs": "^2.1", "drupal/email_registration": "^1.0", + "drupal/ckeditor_emojione": "^1.4", "drupal/entity_browser": "^2.5", "drupal/eu_cookie_compliance": "1.14.0", "drupal/faqfield": "^1.1", @@ -215,7 +255,6 @@ "drupal/group": "1.3", "drupal/honeypot": "^2.0", "drupal/image_widget_crop": "^2.3", - "drupal/layout_builder_modal": "^1.1", "drupal/layout_builder_styles": "^1.0@beta", "drupal/message": "1.1", "drupal/message_notify": "^1.1", @@ -224,10 +263,11 @@ "drupal/multiple_fields_remove_button": "^1.0@alpha", "drupal/paragraphs": "^1.11", "drupal/rabbit_hole": "1.0-beta9", + "drupal/realname": "^1.0@RC", "drupal/redirect": "^1.6", "drupal/route_condition": "^1.1", "drupal/rrssb": "^2.2", - "drupal/rules": "3.0@alpha", + "drupal/rules": "^3.0-alpha", "drupal/social_auth_facebook": "^2.0", "drupal/social_auth_github": "^2.0", "drupal/social_auth_google": "^2.0", @@ -236,14 +276,14 @@ "drupal/twig_field_value": "^2.0", "drupal/twig_tweak": "^2.5", "drupal/ultimate_cron": "2.0-alpha5", + "drupal/unlimited_number": "2.0.2", "drupal/update_helper": "^2.0", "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", - "drupal/webhooks": "^1.0@alpha", + "drupal/votingapi": "^3.0@beta", + "drupal/votingapi_reaction": "1.2", + "drupal/votingapi_widgets": "1.0-alpha6", "npm-asset/dropzone": "^5.7", "npm-asset/imagesloaded": "^4.1", "npm-asset/jquery-bar-rating": "^1.2", @@ -260,6 +300,35 @@ "sort-packages": true }, "extra": { + "installer-paths": { + "core": [ + "type:drupal-core" + ], + "libraries/{$name}": [ + "type:drupal-library" + ], + "modules/contrib/{$name}": [ + "type:drupal-module" + ], + "profiles/contrib/{$name}": [ + "type:drupal-profile" + ], + "themes/contrib/{$name}": [ + "type:drupal-theme" + ], + "drush/Commands/contrib/{$name}": [ + "type:drupal-drush" + ], + "modules/custom/{$name}": [ + "type:drupal-custom-module" + ], + "profiles/custom/{$name}": [ + "type:drupal-custom-profile" + ], + "themes/custom/{$name}": [ + "type:drupal-custom-theme" + ] + }, "installer-name": "idea", "patches": { "drupal/core": { @@ -272,22 +341,10 @@ "Limit the number of fields to display": "https://www.drupal.org/files/issues/2019-05-07/1234624-115-limit-values-to-display.patch", "Dispatch events for changing content moderation states": "https://www.drupal.org/files/issues/2018-11-06/2873287-50.patch", "Entity reference error messages are not user friendly": "https://www.drupal.org/files/issues/2020-06-04/3138631-9.patch", - "Callers of LayoutEntityHelperTrait::getEntitySections() do not account for the view mode": "https://www.drupal.org/files/issues/2019-06-20/3008924-5.patch", - "Off-canvas style resets are overriding styles (especially SVGs) resulting in display issues": "https://www.drupal.org/files/issues/2019-05-07/off-canvas-style-resets-2958588-13.patch" - }, - "drupal/paragraphs": { - "Paragraphs do not render: access check for 'view' fail when using layout builder + custom blocks & content revisions because the incorrect parent revision ID is being passed in ParagraphAccessControlHandler::checkAccess()": "https://www.drupal.org/files/issues/2020-07-08/access-controll-issue-3090200-22.patch", - "Unavailable to add/edit paragraphs on adding translation.": "https://www.drupal.org/files/issues/paragraphs-translation_paragraph_issue-2925533-2.patch", - "paragraphs missing langcode patch": "https://www.drupal.org/files/issues/paragraphs-missing-langcode-2901390-3.patch" - }, - "drupal/default_content": { - "Add a Normalizer and Denormalizer to support Layout Builder": "https://www.drupal.org/files/issues/2020-08-24/default_content-add-normalizer-denormalizer-for-layout-builder-3160146-25.patch" - }, - "drupal/votingapi_widgets": { - "Previewing a Voting API formatter causes the fatals": "https://www.drupal.org/files/issues/2019-01-09/3024465-votingwidgets-4.patch" + "Callers of LayoutEntityHelperTrait::getEntitySections() do not account for the view mode": "https://www.drupal.org/files/issues/2019-06-20/3008924-5.patch" }, "drupal/ajax_comments": { - "Ajax not working when using non-default view mode": "https://www.drupal.org/files/issues/2020-02-12/ajax_comments-non-default-view-mode-2896916-24.patch" + "Ajax not working when using non-default view mode - https://www.drupal.org/project/ajax_comments/issues/2896916": "https://www.drupal.org/files/issues/2022-05-09/ajax_comments-ajax_non_default_view_mode-2896916-beta4-3.patch" }, "drupal/rules": { "ServiceNotFoundException when installing a rule via configuration": "https://www.drupal.org/files/issues/2020-07-10/ServiceNotFoundException-when-installing-a-rule-via-configuration.2870851-10_0.patch" diff --git a/config/install/editor.editor.comments.yml b/config/install/editor.editor.comments.yml index f5c281c2..1e52222e 100644 --- a/config/install/editor.editor.comments.yml +++ b/config/install/editor.editor.comments.yml @@ -20,6 +20,7 @@ settings: - Strike - DrupalLink - Blockquote + - Emojione plugins: language: language_list: un diff --git a/config/install/field.field.comment.comment.comment_body.yml b/config/install/field.field.comment.comment.comment_body.yml index 24279662..41589d59 100644 --- a/config/install/field.field.comment.comment.comment_body.yml +++ b/config/install/field.field.comment.comment.comment_body.yml @@ -9,11 +9,7 @@ dependencies: - text third_party_settings: allowed_formats: - comments: comments - basic_html: '0' - restricted_html: '0' - full_html: '0' - plain_text: '0' + allowed_formats: { } id: comment.comment.comment_body field_name: comment_body entity_type: comment diff --git a/config/install/filter.format.basic_html.yml b/config/install/filter.format.basic_html.yml index cebbc1a3..a5b5c7d5 100644 --- a/config/install/filter.format.basic_html.yml +++ b/config/install/filter.format.basic_html.yml @@ -6,7 +6,7 @@ dependencies: - editor name: 'Basic HTML' format: basic_html -weight: 0 +weight: -9 filters: filter_html: id: filter_html diff --git a/config/install/filter.format.basic_html_with_embedded_video.yml b/config/install/filter.format.basic_html_with_embedded_video.yml index 88199490..c2a45f3c 100644 --- a/config/install/filter.format.basic_html_with_embedded_video.yml +++ b/config/install/filter.format.basic_html_with_embedded_video.yml @@ -6,7 +6,7 @@ dependencies: - editor name: 'Basic HTML with built-in embedded video support' format: basic_html_with_embedded_video -weight: 0 +weight: -8 filters: filter_ckeditor_media_embed: id: filter_ckeditor_media_embed diff --git a/config/install/filter.format.comments.yml b/config/install/filter.format.comments.yml index 8504cb80..50941a46 100644 --- a/config/install/filter.format.comments.yml +++ b/config/install/filter.format.comments.yml @@ -3,7 +3,7 @@ status: true dependencies: { } name: Comments format: comments -weight: 0 +weight: -10 filters: filter_url: id: filter_url diff --git a/config/install/filter.format.full_html.yml b/config/install/filter.format.full_html.yml index f63662d7..a13115e7 100644 --- a/config/install/filter.format.full_html.yml +++ b/config/install/filter.format.full_html.yml @@ -5,7 +5,7 @@ dependencies: - editor name: 'Full HTML' format: full_html -weight: 2 +weight: -5 filters: filter_align: id: filter_align diff --git a/config/install/filter.format.plain_text.yml b/config/install/filter.format.plain_text.yml index 61db155a..14d0ac7d 100644 --- a/config/install/filter.format.plain_text.yml +++ b/config/install/filter.format.plain_text.yml @@ -3,7 +3,7 @@ status: true dependencies: { } name: 'Plain text' format: plain_text -weight: 10 +weight: -4 filters: filter_html_escape: id: filter_html_escape diff --git a/config/install/filter.format.restricted_comments_html.yml b/config/install/filter.format.restricted_comments_html.yml index 219e1ab5..0af0f83e 100644 --- a/config/install/filter.format.restricted_comments_html.yml +++ b/config/install/filter.format.restricted_comments_html.yml @@ -3,7 +3,7 @@ status: true dependencies: { } name: 'Restricted comments HTML' format: restricted_comments_html -weight: 0 +weight: -7 filters: filter_html: id: filter_html diff --git a/config/install/filter.format.restricted_html.yml b/config/install/filter.format.restricted_html.yml index 5656b145..7e682a26 100644 --- a/config/install/filter.format.restricted_html.yml +++ b/config/install/filter.format.restricted_html.yml @@ -3,7 +3,7 @@ status: true dependencies: { } name: 'Restricted HTML' format: restricted_html -weight: 1 +weight: -6 filters: filter_html: id: filter_html diff --git a/idea.info.yml b/idea.info.yml index acdcd9cc..88a71289 100644 --- a/idea.info.yml +++ b/idea.info.yml @@ -113,6 +113,7 @@ dependencies: - votingapi_reaction:votingapi_reaction - drupal:views - paragraphs:paragraphs + - drupal:ckeditor_emojione # Custom modules - openideal_challenge:openideal_challenge - openideal_faq:openideal_faq