Skip to content

Instantly share code, notes, and snippets.

GDmac GDmac

  • Netherlands
Block or report user

Report or block GDmac

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
GDmac / gw_categories select-menu
Created May 25, 2011
Select menu with gwcode_categories
View gw_categories select-menu
[select name="category[]" id="categories" multiple="multiple"]
{exp:gwcode_categories channel="locations_channel" style="linear"}
{if "{new_group}"=="yes"}
{if {cat_count}>1}
[optgroup label="{cat_group_name}"]
[option value="{cat_id}"]{cat_name}[/option]
GDmac / fullcal_demo.html
Created Dec 25, 2011
EE full_calendar demo, regular channel entries
View fullcal_demo.html
// -----------------------------------------------------------------------
// template_group/fullcal_demo
<script type='text/javascript'>
// for start_on and stop_before parameters format 2011-12-25 13:00
function myDate(d) {
return d.getFullYear() + '-' +
(d.getMonth() < 9 ? '0' : '') + (d.getMonth()+1) + '-' +
GDmac / eecms cats with posts
Created Feb 23, 2012
Mysql joining 3 tables with possible entries
View eecms cats with posts
$query = "
c.cat_id, cat_name, count(t.status) AS count_posts
exp_categories c
LEFT JOIN exp_category_posts AS p
ON p.cat_id = c.cat_id
LEFT JOIN exp_channel_titles AS t
ON t.entry_id = p.entry_id
AND t.status != 'closed'
GDmac / gist:2000022
Created Mar 8, 2012
CodeIgniter Curl Head first
View gist:2000022
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* This fetches the header only for a remote page.
* Pro's:
* - when fetching static stuff (images, css, html)
* you can first compare modified date or statuscode (304)
* Con's:
* - hitting a heavy webapp with dynamic content might be slow,
* you essentially hit the remote page two times
View gist:2215989
/* Event Helper, set an event to april first
* it won't show in the channel:entries
* but the archive wil show an entry for april
{exp:channel:entries channel="events"
year='2012' month='04'
show_expired='yes' show_future_entries="yes"
GDmac / gist:3216550
Created Jul 31, 2012
ExpressionEngine Snippets
View gist:3216550

ExpressionEngine Snippets

Safe_cracker Select author

<select name="author_id">
  {exp:query sql="SELECT member_id AS member_author_id, username AS member_username, screen_name AS member_screen_name FROM exp_members"}
  <option value="{member_author_id}" {if member_author_id == author_id}selected="selected"{if:elseif  member_author_id == logged_in_member_id}selected="selected"{/if}>{member_screen_name}</option>
GDmac / gist:3667859
Created Sep 7, 2012
EE Preload replace double trick
View gist:3667859

main template

{embed="group/template" preload='{{preload_trick}:pre_url_title="special"}'}

embedded template

if called via embed you can override the preload_replace once more.
It will insert the embed-variable and parse it early.

{if segment_3==""}{preload_replace:pre_url_title="fallback"}{/if}

GDmac / gist:3694530
Created Sep 10, 2012
Codigniter and MySQL GET_LOCK
View gist:3694530
- codeigniter, by default, uses persistent database connections, this is problematic in that the
lock is never automatically released on connection termination (what else is to expect with persistent
connections). However after a script ends you also never can RELEASE_LOCK() anymore, at least it didn't
work overhere while testing. The script really has to make sure to release the lock before ending
(shutdown_function) if it uses persistent DB connections.
GDmac / matchparser.php
Created Sep 25, 2012
LOCO parser library MatchParser
View matchparser.php
class MatchParser extends MonoParser {
private $first;
private $second;
public function __construct($internals, $first, $second, $callback = null) {
if($internals[$first] !== $internals[$second]) {
throw new GrammarException("Can't create a ".get_class()." first and second should be the same type");
GDmac / pi.test_plugin.php
Created Sep 27, 2012
test_plugin for conditionals
View pi.test_plugin.php
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
$plugin_info = array(
'pi_name' => 'Test_plugin',
'pi_version' => '1.0',
'pi_author' => 'GDmac',
'pi_author_url' => '',
'pi_description' => 'Testing stuff',
'pi_usage' => Test_plugin::usage()
You can’t perform that action at this time.