Skip to content

Instantly share code, notes, and snippets.

Avatar

Daniel L. Iser danieliser

View GitHub Profile
@danieliser
danieliser / force-pm-asset-caching-on.php
Created Jun 23, 2020
Force Popup Maker asset caching on.
View force-pm-asset-caching-on.php
<?php
add_action( 'wp_enqueue_scripts', 'custom_force_pm_asset_caching', 11 );
function custom_force_pm_asset_caching() {
wp_deregister_script( 'popup-maker-site' );
$cached = get_option( 'pum-has-cached-js' );
if ( ! $cached ) {
PUM_AssetCache::cache_js();
$cached = get_option( 'pum-has-cached-js' );
View beaver-themer-edd-aap-condition-callbacks.php
<?php
function custom_edd_all_access_check_current_download( $download_id = 0 ) {
static $cache = [];
if ( ! isset( $cache[ $download_id ] ) ) {
$cache[ $download_id ] = edd_all_access_check( [
'download_id' => $download_id,
'price_id' => 0,
@danieliser
danieliser / custom-click-block-method.php
Last active Jun 23, 2020
Custom click block method for Popup Maker
View custom-click-block-method.php
<?php
add_filter( 'pum_registered_triggers', 'register_cutstom_click_block', 11 );
function register_cutstom_click_block( $triggers = array() ) {
$triggers['click_block']['fields']['general']['requirements']['options']['form_submission'] = __( 'Form Submission' );
return $triggers;
}
function cu_add_custom_popup_js( $js ) {
View composer.json
{
"name": "popup-maker/test-plugin",
"description": "description",
"minimum-stability": "stable",
"require": {
"pimple/pimple": "^3.3"
},
"autoload": {
"psr-4": {
"DLI\\": "src/"
@danieliser
danieliser / Toggle Trigger Highlighting
Last active May 8, 2020
Bookmarklet to toggle Popup Maker trigger highlighting - Create a new bookmark on your browser toolbar, in the spot for the url, paste the script below. When this bookmarklet is clicked on a page with popup triggers they will all get a flashing yellow highlight until turned off again.
View Toggle Trigger Highlighting
javascript:(function($){ $('style#pum-highlighted').remove(); $('body').append($('<style>').attr('id', 'pum-highlighted').text('.pum-highlighted { background-color: rgba(255, 255, 0, .75)!important; }')); function highlight() { if ($('.pum-highlight').hasClass('pum-highlighted')) { $('.pum-highlight').removeClass('pum-highlighted'); } else { $('.pum-highlight').addClass('pum-highlighted'); } } $('.pum-trigger').toggleClass('pum-highlight'); if (window.pum_bookmark_button_highlighter === undefined) { window.pum_bookmark_button_highlighter = setInterval(function(){highlight()}, 500); } }(jQuery));
@danieliser
danieliser / phpcs.xml
Last active Apr 24, 2020
Code Atlantic PHPCS Coding Standards
View phpcs.xml
<?xml version="1.0"?>
<ruleset name="Code Atlantic - Coding-Standards - Short Arrays">
<description>Code Atlantic Coding-Standards, keeping short array syntax.</description>
<!-- Include main ruleset.xml -->
<rule ref="./ruleset.xml"/>
<!-- Use short arrays -->
<rule ref="Generic.Arrays">
<exclude name="Generic.Arrays.DisallowShortArraySyntax.Found" />
View mc-embed-form-success-detection.js
var mc1Submitted = false;
jQuery('#mc-embedded-subscribe-form').on('submit reset', function (event) {
console.log(event);
if ("submit" === event.type) {
mc1Submitted = true;
} else if ( "reset" === event.type && mc1Submitted ) {
console.log('success');
}
});
@danieliser
danieliser / calderaforms.ajax-success.js
Last active May 7, 2020
Caldera Forms doesn't provide any events on the form itself when AJAX is successful (no validation errors). Thus the workaround is to store the form at the last event triggered where it is accessible `cf.ajax.request`, and use it in either the global `cf.submission` or `cf.complete` events.
View calderaforms.ajax-success.js
{
const $ = window.jQuery;
let currentForm, currentFormId;
$(document)
// Before all requests
.on('cf.ajax.request', function (event, obj) {
currentForm = obj.$form;
currentFormId = obj.formIdAttr;
})
@danieliser
danieliser / popup-content.html
Created Dec 30, 2019
Never show popup again checkbox
View popup-content.html
<label>
<input type="checkbox" onclick="PUM.close(123); jQuery.pm_cookie('pum-123', true, '10 years', '/');" />
Never Show Again
</label>
View Get Popup ID from slug.js
function getPopupIDFromSlug(slug) {
var popups = Object.values(pum_vars.popups);
for(var i = 0; i < popups.length; i++) {
if (popups[i].slug === slug) {
return popups[i].id;
}
}
return null;
}
You can’t perform that action at this time.