Ecosyste.ms: OpenCollective
An open API service for software projects hosted on Open Collective.
github.com/AlchemyCMS/alchemy_cms
Alchemy is the Open Source Rails CMS framework for the component based web that can be used as classic server side rendered or headless CMS.
https://github.com/AlchemyCMS/alchemy_cms
If we do not pass the content when building an essence,
`after_initialize` hooks do not have acc...
This adds an Alchemy::EssenceHeadline. It has the following features:
When used as a preview tex...
Touch Elements only after update
343cc8a905cfb7d14dade636bef709105867ba3d authored over 3 years ago by Thomas von Deyen <[email protected]>
When an essence has a related object, such as a picture or an
attachment, we need to break cache...
Convert "Visit page" button to "Link to new tab"
9ec35e5ed0fc174bf6c93d0ebcd55b6841a42f4f authored over 3 years ago by Thomas von Deyen <[email protected]>4e6ee4cf5a6f8942b619b9cf1d780a49be2662fd authored over 3 years ago by Martin Meyerhoff <[email protected]>
The benefit of this action was that it would unlock the page before
allowing the user to visit i...
This allows an editor to stay in their Alchemy window while previewing
a page.
Allow creating an EssenceRichtext without a content
793d32417e25e9168a0e759e93bbb3cd0052c962 authored over 3 years ago by Thomas von Deyen <[email protected]>
This worked before adding the sanitization. The problem is that if there
is no content, we pass ...
* Add "Sanitized Body" to Alchemy::EssenceRichtext
Often, we want HTML, but not all the thing...
50171977b1d1474ca4412e558a6d537eee5c98b7 authored over 3 years ago by Martin Meyerhoff <[email protected]>Allow instantiating a content on an unpersisted valid element
365ea46db8d9c6a014ffd7a535266e0fdba99345 authored over 3 years ago by Thomas von Deyen <[email protected]>Rails don't need a content, and neiter do we.
abcaf18b7ecc40a07358e8e7889f8a5c8dc7494d authored over 3 years ago by Martin Meyerhoff <[email protected]>
When copying an Essence, it needs to know its content - otherwise it
can't figure out what optio...
1a9380dc46cf26ca56afe30764f582b77e5c536a authored over 3 years ago by Thomas von Deyen <[email protected]>
This reduces the number of dependencies we have to the ones
we actually need. Removing the need ...
7514d6b7488853e553b1c38772a8d6c510572d44 authored over 3 years ago by Thomas von Deyen <[email protected]>
Fix add nested element with multiple nestable elements
390205f69528aadd1c42600382f9f7b5db1271e6 authored over 3 years ago by Thomas von Deyen <[email protected]>
If an element allows multiple nestable elements the element select
dialog appears. That was miss...
So that it actually tests what it does:
Immediately creating a nested element.
Also add a pendi...
4a1b2176e40628b814130dc92421e52fa365a836 authored over 3 years ago by Thomas von Deyen <[email protected]>Destroy public version if public checkbox is unset
72b5134cb0d50cf58dde02f3b9c0e5e07ae226d6 authored over 3 years ago by Thomas von Deyen <[email protected]>MySQL does not support milliseconds, so we need to adopt the tests
bb27d61bc1c3dad2323159189125fd252d4f7f12 authored over 3 years ago by Thomas von Deyen <[email protected]>
In order unpublish a page via the "Published" checkbox
in the page settings dialog we need to de...
Create new contents on demand
94190bbaef8d761767761f834ad4b1a4f27f889a authored over 3 years ago by Thomas von Deyen <[email protected]>
If new contents have been defined on the elements definition, but they are
not existing yet we c...
Instead of in the view
9b816b29dc03396a6872ed9287e98ce56c5eb815 authored over 3 years ago by Thomas von Deyen <[email protected]>Fixes paste element and create element with autogenerated nested elements
10b174796a20fe9526ce37dd43b7e5460d09db96 authored over 3 years ago by Thomas von Deyen <[email protected]>Autogenerated nested elements need to have the same page_version as the parent.
e415a218b8854333cfd98ef76560b4aca19e724f authored over 3 years ago by Thomas von Deyen <[email protected]>We need the page_version_id not the page_id
1aee5b5d8d37a474350a8f65b1bbaeb41f96aa98 authored over 3 years ago by Thomas von Deyen <[email protected]>df012695395ab6477d38539089db58c8884678ef authored over 3 years ago by Thomas von Deyen <[email protected]>
Render site layout with block
44d97d2e40efa2a221d9f85d3e41678ce4f86c9c authored over 3 years ago by Thomas von Deyen <[email protected]>Adds a repository class that mimics the ActiveRecord interface of elements, but uses the eager l...
16e72789f600ab2ddf82c4c40874da76789e7d0c authored over 3 years ago by Thomas von Deyen <[email protected]>Rufo uses the same default as Rubocop here.
By removing the override we use the dewfault of Rub...
9eb1a1d0b1e6f0df51ee6f2f297e5f6ac580da4f authored over 3 years ago by Thomas von Deyen <[email protected]>
The elements repository uses array methods to filter, order and limit
elements on a eager loaded...
This is way fast than using create and since we only use
array methods in the repository
class i...
These scopes are used on the ElementsFinder and needs to
be supported.
This mimics the ActiveRecord interface of elements, but
uses the eager loaded elements and POR m...
It is very common to chain ActiveRecord scopes to filter elements.
This makes it possible with ...
5aa86cb3e20a87fb06a17764762eaed97ea5d8e0 authored over 3 years ago by Thomas von Deyen <[email protected]>
If a page has a published page version with nested elements
the nested elements got deleted bef...
NodeTree is being used for rendering the Menu in tree
structure. This Tree could be made generi...
Update rubocop config and stick version
9510def9be6eeb4fcbd4809542f77c4f23918da0 authored over 3 years ago by Thomas von Deyen <[email protected]>New cops have been introduced.
67bb7747dd20eded56ca964d64050b0ae27f7792 authored over 3 years ago by Thomas von Deyen <[email protected]>We only support Ruby 2.5 and above.
e5446e09894b3bc0f66e11a36d58af958fa9b5de authored over 3 years ago by Thomas von Deyen <[email protected]>We use hound ci to run linting. They only support some versions of rubocop.
Lets stick with the...
df1a50fe7bde65a3445a6f9dc9ef70a6e07c2a05 authored over 3 years ago by Thomas von Deyen <[email protected]>Fix factory loading
ecc90c8ffbcf4c7978181caef582c6f79bfc4c1e authored over 3 years ago by Thomas von Deyen <[email protected]>Our factories now get appended to the definition paths of factory bot.
Also FactoryBot.reload i...
b278b16aebadf51f5381ea89d081c9ee7bd19082 authored over 3 years ago by Thomas von Deyen <[email protected]>
Before the method returned a list of individual file paths.
FactoryBot is able to load files fro...
Add Page Versions
1cd1c6d363821c3bd925533b5d3a133a35ac6bb4 authored over 3 years ago by Thomas von Deyen <[email protected]>299b995623eb9a24ce9a1e0f58d2f6bc1fa3c7d3 authored over 3 years ago by Henning Vogt <[email protected]>
With this change it is possible to define something like
<%= render_site_layout do %>
<%= ren...
5d7ae6bba2d397506a6e25bb109656f3ae299794 authored over 3 years ago by Thomas von Deyen <[email protected]>
This reverts commit 9bddcd2883aa328841318e8b0f89041e268fb1c4.
fdea8373f689bd0bb5d81b0176884b9c7138f830 authored over 3 years ago by Thomas von Deyen <[email protected]>12247aac5a938e6bb2af52bdf0311201461dc4e6 authored over 3 years ago by Thomas von Deyen <[email protected]>
Always use the draft version of the page set or passed into
render_elements if we are in preview...
6ad487188e60483a18e4aec03ad7d9d469695e16 authored over 3 years ago by Thomas von Deyen <[email protected]>
1b25c7be6af940de7710d730e578b7232b9f25cf authored over 3 years ago by Thomas von Deyen <[email protected]>
Since we load the draft version elements in the elements window,
we need to load the pages draft...
In render_elements we use either a `@page_version` or the pages public
version to load elements ...
ae8e5926b703882b93f94648c15d17685b334d51 authored over 3 years ago by Thomas von Deyen <[email protected]>
Only use the assigned page version if there is no page
given via the `:from_page` option, so tha...
A page is considered public? if a public version exists and this is published.
986fadbad29877fbeec01f2fbc9e405f7e34941b authored over 3 years ago by Thomas von Deyen <[email protected]>
Instead of creating a new public version every time we publish a page,
we re-use the already pub...
Any page that does not have any published version is considered not public
f89578d1acf829b9c99cdf588e463147a4529c35 authored over 3 years ago by Thomas von Deyen <[email protected]>These timestamps now live on the page version.
The values still exists on the table for histori...
43b7328950b79a0a2f51178b1419d09baa36b0b0 authored over 3 years ago by Thomas von Deyen <[email protected]>b322faf8fff20341e6bb6fa953bc66262d520377 authored over 3 years ago by Thomas von Deyen <[email protected]>
Only elements that have a public version should be returned
by the API.
It turned out that using .find_each messed with the order of elements during copy.
3b4f24d83568492e459656eae3e4b8d84de093ca authored over 3 years ago by Thomas von Deyen <[email protected]>
Instead of the current page the ElementsFinder now uses
the given page version to load elements....
We want to make sure that we only have one published version
at a given time. Ideally we would a...
51ba5e74dde91500b78929796fb87bd94639fe13 authored over 3 years ago by Thomas von Deyen <[email protected]>
Instead of passing the page_id we use the page_version_id
to create, update and order elements i...
and use the page version instead.
3a4acaa44a23a664a4cbe0dda3c2bdf7b479d25d authored over 3 years ago by Thomas von Deyen <[email protected]>9c5807e36dd503d9d3c0ebaf31a03c03c0e650ce authored over 3 years ago by Thomas von Deyen <[email protected]>
b8f1b18c78d97d7f976f6ba223fcdeedc27ca425 authored over 3 years ago by Thomas von Deyen <[email protected]>
0b0c1fecf216f36c45dad24200a5386e97db4cd8 authored over 3 years ago by Thomas von Deyen <[email protected]>
The element trash has been removed recently.
3b5212f9df4c6965a463dacf2280c4e3ad7c8330 authored over 3 years ago by Thomas von Deyen <[email protected]>c3558f405830dc4d78fe211b9b5546d5eca62b24 authored over 3 years ago by Thomas von Deyen <[email protected]>
While loading a page tree from the API include elements
from public page version.
74d771dd8f7fe414163a7cfe7c059247ae360080 authored over 3 years ago by Thomas von Deyen <[email protected]>
Create a public version as well and copy the public elements over.
ade4223dd49dd66a0945c1fed6e42fed9916dae6 authored over 3 years ago by Thomas von Deyen <[email protected]>b7f497222c345910ec35f1d4d29d61b4561d7255 authored over 3 years ago by Thomas von Deyen <[email protected]>
Points to the gem and allows to run webpacker in the dummy app
3df9c8e6f886d999f1d26af0fe7240ccd5ee4055 authored over 3 years ago by Thomas von Deyen <[email protected]>3b4c7b45ad07279b69fbf02d5c42d9ca4549b06b authored over 3 years ago by Thomas von Deyen <[email protected]>
8446ac9da654d49ad3390529652100fc006f6ff6 authored over 3 years ago by Thomas von Deyen <[email protected]>
5ba0e70d5d622db3e7af690b3eedc889a9cb0db9 authored over 3 years ago by Thomas von Deyen <[email protected]>
2fd525b5c9ea98f37b28dc475fb26d7789cd4323 authored over 3 years ago by Thomas von Deyen <[email protected]>
3ab84c052d3c96451c496b498c6ab6fcd444a020 authored over 3 years ago by Thomas von Deyen <[email protected]>
c081bae18bf10fe9980efbd496d6e1e8be2e6474 authored over 3 years ago by Thomas von Deyen <[email protected]>
and associate with page
e370c9a79710ac4e9a4bd6887372bff5f96bb21f authored over 3 years ago by Thomas von Deyen <[email protected]>33b948114d4243ba1afb32b9f10ef5b22f76a05b authored over 3 years ago by Thomas von Deyen <[email protected]>
19289f9f64936b66acbbac2c1966ad5fbf18b5c9 authored over 3 years ago by Thomas von Deyen <[email protected]>
Tidy Rake task to remove duplicate legacy URLs
5490ad8b68455b7c290326e2136e9b0ab19c17ef authored over 3 years ago by Thomas von Deyen <[email protected]>1471ee740e1110376277e7892a01c7537c692806 authored over 3 years ago by Matthew Bass <[email protected]>
Change Factory loading mechanism to FactoryBots supported mechanism
0a3d16d84b40356a1e067a6ccc1722de6475c75b authored over 3 years ago by Thomas von Deyen <[email protected]>Add rake task to remove trashed elements
7943253fd8ca822c5ac6f317eca5c529c2685f87 authored over 3 years ago by Thomas von Deyen <[email protected]>
We build these factories such that they could be independently loaded.
However, FactoryBot is bu...
Fix element re-ordering
fd44a1d341c660b911fb980e0b4922d02a9f36b9 authored over 3 years ago by Thomas von Deyen <[email protected]>
Reordering elements does not need to change the elements page id anymore
since we removed the tr...
This reverts commit c9b1c6857ad08016d0115e817df8fa324ad1e140.
daa2a8d1b91a5e7115df82b6c90677a42feb5f77 authored over 3 years ago by Thomas von Deyen <[email protected]>We removed the element trashed with Alchemy 6.0
This task helps to clean up the database with a...
e828c8857622e5fc420a7ffc0629bf74a2e7b5a5 authored over 3 years ago by Thomas von Deyen <[email protected]>