Hello In Info Veritas. These answers may be incomplete, or there may be ways of doing this I'm not aware of, but this is what I've done:
Configurations
These are the easiest to handle with recipes:
For new configurations (let's say configs that your custom recipe module creates, such as custom configs, or content types, field information, new views, new layouts, etc), simply put them in modules/MY_MODULE/config. They will be installed when the module is enabled. This is what the recipe concept is mostly about!
To change existing configurations (such as the site name), you need to do a bit of work by implementing hook_install() and change those configurations there, as in config_set('system.core', 'site_name', 'Awesome site'). And to change complex existing configs such as views of layouts, you may need to do more work, such as the following, which actually modifies the admin_default layout by reading a "local" version first (stored under a folder named config WITHIN my custom "scheduling" module, and moving its content entirely to the one stored in files/config_XXX/active
// Move the modified admin_default layout to the files folder.
$config = config('layout.layout.admin_default');
$path = backdrop_get_path('module', 'scheduling');
$path = './' . $path . '/config';
$storage = new ConfigFileStorage($path);
$new_layout = new Config('layout.layout.admin_default', $storage);
$new_data = $new_layout->getData();
$config->setData($new_data);
$config->save();
Themes and layout templates
There may be ways to create those by the module manually moving directories and files from a specific folder within its folder, into the folders themes and layouts in the root of your installation. This would be done also in hook_install(). Personally, I think it's better to create a github repo of your installation that already includes the needed custom themes and layout templates (be careful not to publicly store private information contained in settings.php!), and then cloning that from github when you install a new version of the site.
Have you tried uc_cart_add_item()? You need to provide the nid of the product. Then you can use backdrop_goto('cart/checkout'); to send the user to the checkout screen. uc_cart_add_item...
Posted1 week 11 hours ago by Alejandro Cremaschi (argiepiano) on:
No problem, let's see how it evolves.
I'd be happy to provide a suggested version if i could.
I will keep that in mind and try learn this hook chain hopefully very soon. I will...
Posted1 week 1 day ago by RS Snyder (theflightrs) on:
I could request hashing support, but that's the lazy way
🤣
I would appreciate it if you as an active maintainer would 'officially' add a hashing support...
Hi, i understand the updating obstacle - not worth mentioning - hence it is a wacky (but working) patch until i know what to do. :-)
One of my biggest wishes is to understand the hook...
Posted1 week 1 day ago by RS Snyder (theflightrs) on:
Comments
Hello In Info Veritas. These answers may be incomplete, or there may be ways of doing this I'm not aware of, but this is what I've done:
Configurations
These are the easiest to handle with recipes:
// Move the modified admin_default layout to the files folder. $config = config('layout.layout.admin_default'); $path = backdrop_get_path('module', 'scheduling'); $path = './' . $path . '/config'; $storage = new ConfigFileStorage($path); $new_layout = new Config('layout.layout.admin_default', $storage); $new_data = $new_layout->getData(); $config->setData($new_data); $config->save();Themes and layout templates
There may be ways to create those by the module manually moving directories and files from a specific folder within its folder, into the folders themes and layouts in the root of your installation. This would be done also in hook_install(). Personally, I think it's better to create a github repo of your installation that already includes the needed custom themes and layout templates (be careful not to publicly store private information contained in settings.php!), and then cloning that from github when you install a new version of the site.
I hope this helps.
Thank you for you so fast answer.
That was I was thinking.
Thank you again.