Here's a typical update hook where we need to update the default config of a view provided by core:
function somemodule_update_1007() {
$data = array(
... 100s OF LINES OF CODE HERE ...
);
$config = config('some.config.file');
if ($config->isNew()) {
$config->setData($data);
$config->save();
}
}
I have always found this to be very annoying, because a) a dev has to convert the contents of the .json file to an array (to be used as the value of $data), and b) we are adding 100s of lines of code to .install files, which makes them unreadable.
Why are we not doing something like this instead?:
function somemodule_update_1007() {
$new_config_file = backdrop_get_path('module', 'somemodule') . '/config/some.config.file.json';
$data = json_decode(file_get_contents($new_config_file), TRUE);
$config = config('some.config.file');
if ($config->isNew()) {
$config->setData($data);
$config->save();
}
}
Recent comments
In a blog post titled "Github Tips and Tricks for Contrib Maintainers", I'd like to see some of the following topics: When is the README sufficient for documentation? When should...
Github Tips and Tricks for Contrib Maintainers
Thanks Alejandro. That was the clues I needed.
Ubercart - Programmatically add product to cart and straight to Checkout
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...
Ubercart - Programmatically add product to cart and straight to Checkout