Skip to content

Instantly share code, notes, and snippets.

@steffenr
steffenr / po_to_csv.sh
Created December 8, 2023 07:46
Convert .po to .csv
#!/bin/bash
# Check if the required command-line argument is provided
if [ "$#" -ne 1 ]; then
echo "Usage: $0 <po_file>"
exit 1
fi
po_file="$1"
csv_file="${po_file%.po}.csv"
@steffenr
steffenr / ip_adapter_face_sdxl.json
Created November 6, 2023 06:49
Simple IP-Adapter Face workflow with SDXL model
{
"last_node_id": 18,
"last_link_id": 29,
"nodes": [
{
"id": 10,
"type": "EmptyLatentImage",
"pos": [
790,
390
@steffenr
steffenr / THEMENAME_theme_suggestions_container_alter.php
Created November 28, 2019 07:10
Custom theme suggestions for container elements in drupal 8
<?php
/**
* Implements hook_theme_suggestions_alter() for container.
*/
function THEMENAME_theme_suggestions_container_alter(array &$suggestions, array &$variables)
{
$name = '';
$type = '';
if (isset($variables['element']['#name'])) {
@steffenr
steffenr / hook_update_n.php
Created August 20, 2019 06:55
Drupal 8 - Batch job in hook_update_n
<?php
use Drupal\node\Entity\Node;
/**
* Implements hook_update_N().
*
* Set default value to new field field_registered on all Person nodes.
*/
function MY_MODULE_update_8001(&$sandbox) {
@steffenr
steffenr / SCSS.md
Created February 4, 2019 08:20
Advanced SCSS, or, 16 cool things you may not have known your stylesheets could do

⇐ back to the gist-blog at jrw.fi

Advanced SCSS

Or, 16 cool things you may not have known your stylesheets could do. I'd rather have kept it to a nice round number like 10, but they just kept coming. Sorry.

I've been using SCSS/SASS for most of my styling work since 2009, and I'm a huge fan of Compass (by the great @chriseppstein). It really helped many of us through the darkest cross-browser crap. Even though browsers are increasingly playing nice with CSS, another problem has become very topical: managing the complexity in stylesheets as our in-browser apps get larger and larger. SCSS is an indispensable tool for dealing with this.

This isn't an introduction to the language by a long shot; many things probably won't make sense unless you have some SCSS under your belt already. That said, if you're not yet comfy with the basics, check out the aweso

@steffenr
steffenr / select2_behat_feature_context.php
Last active September 13, 2018 12:24
Behat / Select2 Feature context
<?php
/**
* @When /^(?:|I )fill in select2 input "(?P<field>(?:[^"]|\\")*)" with "(?P<value>(?:[^"]|\\")*)" and select "(?P<entry>(?:[^"]|\\")*)"$/
*/
public function iFillInSelectInputWithAndSelect($field, $value, $entry)
{
$page = $this->getSession()->getPage();
$inputField = $page->find('css', $field);
if (!$inputField) {
@steffenr
steffenr / id_map_custom.php
Created January 29, 2018 07:23
[Drupal 8] Override id map with custom plugin for migrations
<?php
/**
* Implements hook_migration_plugins_alter().
*/
function my_module_migration_plugins_alter(array &$migrations) {
foreach ($migrations as $id => $configuration) {
if (!empty($migrations[$id]['idMap'])) {
// Do not override existing values.
continue;
@steffenr
steffenr / expose_author_uid.php
Created January 30, 2017 07:13
[Drupal8] make user field configurable in comment
<?php
/**
* Implements hook_entity_base_field_info_alter().
*/
function mymodule_entity_base_field_info_alter(&$fields, EntityTypeInterface $entity_type) {
switch ($entity_type->id()) {
case 'comment':
$fields['uid']->setDisplayConfigurable('view', TRUE);
break;
@steffenr
steffenr / file_media_entity.php
Last active February 27, 2023 18:33
[Drupal 8] Create file/ media_entity programmatically
<?php
$filesystem = \Drupal::service('file_system');
// Create file entity.
$image = File::create();
$image->setFileUri($destination);
$image->setOwnerId(\Drupal::currentUser()->id());
$image->setMimeType('image/' . pathinfo($destination, PATHINFO_EXTENSION));
$image->setFileName($filesystem->basename($destination));
$image->setPermanent();
$image->save();
@steffenr
steffenr / gist:84ba5a5c8bd5af91e20d496e16f05eb3
Created December 12, 2016 10:48
Determine the size of MySQL databases
SELECT table_schema AS "Database",
ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) AS "Size (MB)"
FROM information_schema.TABLES
GROUP BY table_schema;