Skip to content

Instantly share code, notes, and snippets.

View kitzberger's full-sized avatar

Philipp Kitzberger kitzberger

View GitHub Profile
// ext_tables.sql
CREATE TABLE tx_xxxxxxx_domain_model_record (
...
type int(11) unsigned DEFAULT '0',
...
);
// TCA
'type' => [
'exclude' => false,
@kitzberger
kitzberger / sed examples.md
Created March 14, 2024 08:02
Useful sed commands

Duplicate a line and modify it

sed '/pattern/{p;s/pattern/replacement/}' input_file

Explanation:

  • /pattern/: This specifies the pattern that identifies the line you want to duplicate and modify.
  • {p;s/pattern/replacement/}: This is a group of commands enclosed within {}.
@kitzberger
kitzberger / Form.yaml
Created March 2, 2024 08:41
TYPO3 EXT:form field with label override per finisher
renderables:
-
type: Page
identifier: page
label: Form
renderables:
-
defaultValue: ''
type: Text
identifier: name
@kitzberger
kitzberger / RTE.css
Last active November 17, 2023 17:21
CKeditor: breitere Dropdowns
/* This modifies the outer part of the CKeditor */
.cke_combo__styles .cke_combo_text { width: 150px; }
.cke_combo__format .cke_combo_text { width: 150px; }
.cke_combopanel { width: 150px !important; }
@kitzberger
kitzberger / FormSetup.yaml
Last active November 7, 2023 10:48
TYPO3 form with dynamic recipients
TYPO3:
CMS:
Form:
prototypes:
standard:
formElementsDefinition:
Form:
renderingOptions:
translation:
translationFiles:
@kitzberger
kitzberger / warmup-cache.sh
Last active October 18, 2023 11:24
Simple warmup script
#!/bin/bash
URLS=(
https://www.example.net/
https://www.example.com/
)
DEPTH=5
ALLOWED_DOMAINS=www.example.net,www.example.com
EXCLUDE=typo3conf,fileadmin,typo3temp,uploads
@kitzberger
kitzberger / MyClass.php
Created August 1, 2023 07:45
TYPO3 Timetracker
<?php
$tt = GeneralUtility::makeInstance(\TYPO3\CMS\Core\TimeTracker\TimeTracker::class);
$tt->start();
// Expensive operation here
$tt->finish();
// Print the runtime between start and finish in milliseconds.
@kitzberger
kitzberger / PageModuleHook.php
Created June 27, 2023 13:14
TYPO3 PageModule Enhancements
<?php
namespace My\Extension\Hooks;
use TYPO3\CMS\Backend\Controller\PageLayoutController;
use TYPO3\CMS\Backend\View\BackendLayoutView;
use TYPO3\CMS\Core\Utility\GeneralUtility;
class PageModuleHook
{
@kitzberger
kitzberger / Fluid.html
Created June 6, 2023 20:52
Tips for fluid templating
Berechnung und Zuweisung zu neuer Variable:
✗ {imageWidth / 2.24 -> f:variable(name: 'imageHeight')}
✓ {f:variable(name:'imageHeight', value:'{imageWidth / 2.71}')}
Casting
✗ {imageHeight as integer -> f:variable(name:'imageHeight')}
✓ {f:variable(name:'imageHeight',value:'{imageHeight as integer}')}
@kitzberger
kitzberger / .bashrc
Created May 10, 2023 10:57
Script for bumping versions in TYPO3 projects
t3version() {
[[ -z "$1" ]] && echo "Specify new version parameter!" && return
extEmconf=$(git ls-files *ext_emconf.php)
if [ ! -z "$extEmconf" ]; then
sed -i "s/'version'\(\s*\)=>\(\s*\)'\(.*\)',/'version'\1=>\2'$1',/" $extEmconf
git add $extEmconf
echo "Updated version in all ext_emconf.php's"
fi
packageJson=$(git ls-files *package.json)
if [ ! -z "$packageJson" ]; then