Skip to content

Instantly share code, notes, and snippets.

View jswebschmiede's full-sized avatar
🏠
Working from home

Joerg Schoeneburg jswebschmiede

🏠
Working from home
View GitHub Profile
$formLayout = preg_replace('/style=\\"[^\\"]*\\"/', '', $formLayout);
@jswebschmiede
jswebschmiede / docker-compose.yml
Last active February 20, 2024 12:44
Joomla Docker Compose
services:
joomla:
image: joomla:latest
restart: always
links:
- db:mysql
depends_on:
- db
healthcheck:
test: ['CMD-SHELL', 'mysqladmin ping -h localhost -u root -psecret']
<?php
session_start();
// Zeitraum in Sekunden, in dem die Anzahl der Versuche begrenzt wird
$limitPeriod = 3600; // 1 Stunde
// Maximale Anzahl erlaubter Versuche pro IP-Adresse und Fingerprint innerhalb des Zeitraums
$maxAttempts = 3;
// Generiere einen eindeutigen Fingerprint basierend auf IP-Adresse, User-Agent und Cookies
<?php
session_start();
// Zeitraum in Sekunden, in dem die Anzahl der Versuche begrenzt wird
$limitPeriod = 3600; // 1 Stunde
// Maximale Anzahl erlaubter Versuche pro IP-Adresse innerhalb des Zeitraums
$maxAttempts = 3;
// Eindeutiger Schlüssel für die IP-Adresse in der Session
@jswebschmiede
jswebschmiede / image-src-regexpr.php
Created March 23, 2023 15:46 — forked from vyspiansky/image-src-regexpr.php
PHP: get image src attribute (regular expression)
<?php
// Source: http://goo.gl/qyLFbg
$html = '<img border="0" src="/images/image.jpg" alt="Image" width="100" height="100" />';
preg_match( '@src="([^"]+)"@' , $html, $match );
$src = array_pop($match);
// will return /images/image.jpg
@jswebschmiede
jswebschmiede / scrollTo.js
Created February 2, 2023 14:37 — forked from frob/scrollTo.js
a native scrollTo function in javascript that uses requestAnimationFrame and easing for animation
// easing functions http://goo.gl/5HLl8
Math.easeInOutQuad = function (t, b, c, d) {
t /= d/2;
if (t < 1) {
return c/2*t*t + b
}
t--;
return -c/2 * (t*(t-2) - 1) + b;
};
<?php
class JoomlaHelper{
/**
* Obtiene la versión de Joomla (3,4, ...)
*
* @return string Versión mayor de Joomla
*/
@jswebschmiede
jswebschmiede / javascript.json
Last active November 19, 2022 12:58
Javascript Snippets Json
{
"Arrow Function": {
"prefix": "arrow",
"body": ["const $1 = () => {", "$0", "}"],
"description": "Arrow Function"
},
"Fetch": {
"prefix": "fetch",
"body": [
"try {",
@jswebschmiede
jswebschmiede / handle_price_range_query_var.php
Created April 20, 2022 15:53
enable a custom price range query on WC_Product_Query
add_filter( 'woocommerce_product_data_store_cpt_get_products_query', 'handle_price_range_query_var', 10, 2 );
function handle_price_range_query_var( $query, $query_vars ) {
if ( ! empty( $query_vars['price_range'] ) ) {
$price_range = explode( '|', esc_attr($query_vars['price_range']) );
if ( is_array($price_range) && count($price_range) == 2 ) {
$query['meta_query']['relation'] = 'AND';
$query['meta_query'][] = array(
'key' => '_price',
@jswebschmiede
jswebschmiede / woocommerce - minimum and maximum price
Created April 20, 2022 15:13 — forked from Daniel217D/woocommerce - minimum and maximum price
woocommerce - get minimum and maximum price for current products
function get_filtered_price() {
global $wpdb;
$args = wc()->query->get_main_query();
$tax_query = isset( $args->tax_query->queries ) ? $args->tax_query->queries : array();
$meta_query = isset( $args->query_vars['meta_query'] ) ? $args->query_vars['meta_query'] : array();
foreach ( $meta_query + $tax_query as $key => $query ) {
if ( ! empty( $query['price_filter'] ) || ! empty( $query['rating_filter'] ) ) {