Skip to content

Instantly share code, notes, and snippets.

View vfontjr's full-sized avatar

Victor M. Font Jr. vfontjr

View GitHub Profile
.frm-star-group .star-rating {
margin-right: .25rem !important;
}
.frm-star-group input + label::before, .frm-star-group .star-rating::before {
font-family: 'Font Awesome 6 Pro' !important;
content: '' !important;
color: var(--mastermind-primary-color) !important;
}
.frm-star-group:not(.frm-star-hovered) input[type="radio"]:checked + label::before, .frm-star-group input + label:hover::before, .frm-star-group:hover input + label:hover::before, .frm-star-group .star-rating-on::before, .frm-star-group .star-rating-hover::before {
font-weight: 900 !important;
<?php
/* use this function for populating entries where
* dynamic lookup entry ids are required
*/
function masterminds_get_dynamic_field_entry_id_by_value( $field_id, $value ) {
global $wpdb;
$frm_item_metas_table = $wpdb->prefix . 'frm_item_metas';
$sql = "SELECT item_id FROM `{$frm_item_metas_table}` WHERE field_id = '{$field_id}' AND meta_value = '{$value}'";
return $wpdb->get_var($sql);
}
<?php
public function determine_charset( $charset, $collate ) {
if ( ( $this->use_mysqli && ! ( $this->dbh instanceof mysqli ) ) || empty( $this->dbh ) ) {
return compact( 'charset', 'collate' );
}
if ( 'utf8' === $charset && $this->has_cap( 'utf8mb4' ) ) {
$charset = 'utf8mb4';
}
<script>
jQuery(document).ready(function($) {
"use strict";
/* change field_s32q2 to the id of your date input field
* use your browser's inspection tool to verify the id spelling
*/
$('#field_s32q2').on('change', function() {
/* create a constant reference to a day name values */
const days = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];
@vfontjr
vfontjr / count_form_entries_shortcode.php
Created January 6, 2023 15:06
Count All Fom Entries
<?php
add_shortcode('count_form_entries', 'count_form_entries_callback');
function count_form_entries_callback( $atts ) {
$count = 0;
if ( !empty( $atts ) ) {
$atts = shortcode_atts( array(
'frm_id' => '0',
'frm_key' => ''
), $atts, 'count_form_entries' );
@vfontjr
vfontjr / count-by-role.php
Created January 4, 2023 12:25
Count Formidable Entries by User Role
<?php
add_action('frm_display_form_action', 'check_entry_count', 8, 3);
function check_entry_count($params, $fields, $form) {
global $user_ID;
/* get the current user object */
$current_user = wp_get_current_user();
remove_filter('frm_continue_to_new', '__return_false', 50);
if( $form->id == 5 and !is_admin() ) { //replace 5 with the ID of your form
<script>
jQuery(document).ready(function($) {
"use strict";
$('#field_xxx').on('change', function() {
var total = 0;
if ( $(this).val().length > 0 ) {
const split_vals = $(this).val().split(", ");
var total = 0;
for (var i = 0; i < split_vals.length; i++) {
[if w3cfrm_post_content_type equals="Complete"][if w3cfrm_post_content_format equals="Block"]
<!-- wp:html --><!--
/* Formidable Forms Accessibility Statement Generator
* By Victor Font Consulting Group, LLC
*
* https://formidable-masterminds.com/accessibility-statement-generator/
*
* Author: Victor M. Font Jr.
* https://victorfont.com
* https://formidable-masterminds.com
<script>
jQuery(document).ready(function($) {
"use strict";
/* self-executing function */
( function($) {
/* this function is a workaround for an apparent Firefox bug
* where the default values are sometimes not being displayed
* the test form works Safari, Chrome, and Firefox Developer Edition.
<script>
jQuery(document).ready(function($) {
"use strict";
/* add "display: grid" to field's div.frm_opt_container
* change frm_field_1142_container to the id of your field's container
*/
$('div#frm_field_1142_container > div.frm_opt_container').css('display', 'grid');
/* loop through each radio button to assign it to a grid column
* change wild card selector [id^="frm_radio_1142-"] to the id