Skip to content

Instantly share code, notes, and snippets.

Avatar
✌️
What's happening?

Gregorio Galante gregogalante

✌️
What's happening?
View GitHub Profile
@gregogalante
gregogalante / WoocommerceConditionalPaymentMethods.php
Last active Aug 11, 2020
Set conditional payments method based on shipping method select by the user.
View WoocommerceConditionalPaymentMethods.php
<?php
// Hide payment gateways based on shipping method
function payment_gateway_disable( $available_gateways ) {
global $woocommerce;
$chosen_methods = WC()->session->get( 'chosen_shipping_methods' );
$chosen_shipping = $chosen_methods[0];
if( $chosen_shipping == 1479475819 ) {
unset($available_gateways['cod']);
}
View CustomArraySort.js
/**
* @param {array} array
* @param {string} attribute
* @param {array} sortOrder
*/
function customArraySort (array, attribute, sortOrder) {
let ordering = {}
for (let i = 0; i < sortOrder.length; i++) {
ordering[sortOrder[i]] = i
}
View TimeBetweenDates.js
function timeBetweenDates (dateTo, dateFrom) {
// get total seconds between the times
let delta = Math.abs(date_future - date_now) / 1000
// calculate (and subtract) whole days
let days = Math.floor(delta / 86400)
delta -= days * 86400
// calculate (and subtract) whole hours
let hours = Math.floor(delta / 3600) % 24
delta -= hours * 3600
// calculate (and subtract) whole minutes
@gregogalante
gregogalante / SidebarSections.js
Last active Mar 5, 2018
A module to create a sidebar sections navigation based on content titles.
View SidebarSections.js
var SidebarSections = (function () {
var CONTENT_CONTAINER = 'YOUR CONTENT CONTAINER SELECTOR'
var SIDEBAR_CONTAINER = 'YOUR SIDEBAR CONTAINER SELECTOR'
var _titles = []
var _titlesGroup = []
// This function is used to initialize the module.
var init = function () {
@gregogalante
gregogalante / SnakeToCamelCase.js
Last active Mar 5, 2018 — forked from emcmanus/snakeToCamelCase.js
ES6 module to recursively convert snake case keys in an object to camel case using lodash.
View SnakeToCamelCase.js
export function camelCaseKeys(object) {
let camelCaseObject = _.cloneDeep(object)
if (_.isArray(camelCaseObject)) {
return _.map(camelCaseObject, camelCaseKeys)
}
if (_.isString(camelCaseObject)) {
return camelCaseObject
}
camelCaseObject = _.mapKeys(camelCaseObject, (value, key) => _.camelCase(key))
@gregogalante
gregogalante / PaperclipDynamicStyle.rb
Created Feb 8, 2018
Set custom Paperclip attachments style based on specific attribute extra value.
View PaperclipDynamicStyle.rb
class Attachment < ApplicationRecord
has_attached_file :file,
styles: ->(a) { a.instance.paperclip_styles },
path: 'public/system/:class/:id/:style_:filename',
url: '/system/:class/:id/:style_:filename'
validates_attachment_presence :file
def paperclip_styles
@gregogalante
gregogalante / AnimatedCounter.js
Last active Feb 12, 2016
Animazione di sviluppo numeri di un contatore numerico.
View AnimatedCounter.js
var animateCounters = function(duration) {
var $count = $('.counter');
if($count.length) {
$count.each(function () {
$(this).prop('Counter',0).animate({
Counter: $(this).attr('count-number')
}, {
duration: duration,
easing: 'swing',
@gregogalante
gregogalante / WpPolylangCopyPosts.php
Last active Feb 12, 2016
Permette di copiare titolo e contenuto di un post da una lingua all'altra attraverso i comandi di duplicazione di Polylang. Codice da inserire nel function.php
View WpPolylangCopyPosts.php
<?php
// Make sure Polylang copies the content when creating a translation
function jb_editor_content( $content ) {
// Polylang sets the 'from_post' parameter
if ( isset( $_GET['from_post'] ) ) {
$my_post = get_post( $_GET['from_post'] );
if ( $my_post )
return $my_post->post_content;
}
@gregogalante
gregogalante / WpRemoveUpdates.php
Last active Feb 12, 2016
Disattivare gli aggiornamenti di Wordpress dal function.php.
View WpRemoveUpdates.php
<?php
// Rimozione aggiornamenti wp
add_filter( 'pre_site_transient_update_core', create_function( '$a', "return null;" ) );
// Rimozione aggiornamenti wp-plugin
add_filter( 'pre_site_transient_update_plugins', create_function( '$a', "return null;" ) );
?>
@gregogalante
gregogalante / WpRemoveMenu.php
Last active Feb 12, 2016
Codice per nascondere le voci del menu di Wordpress agli utenti.
View WpRemoveMenu.php
<?php
function remove_menus(){
// remove_menu_page( 'index.php' ); //Dashboard
remove_menu_page( 'edit.php' ); //Posts
remove_menu_page( 'upload.php' ); //Media
remove_menu_page( 'edit.php?post_type=page' ); //Pages
remove_menu_page( 'edit-comments.php' ); //Comments
remove_menu_page( 'themes.php' ); //Appearance
remove_menu_page( 'plugins.php' ); //Plugins
You can’t perform that action at this time.