wordpress plugin - add_query_arg and the shortcode parameter
===

I have a custom plugin which lists events and then the specifics of an event. I've registered two shortcodes which work correctly

	function addShortCodes()
	{
		add_shortcode( 'events', array($this,'events'));
		add_shortcode( 'event', array($this,'event'));
	}

Returns a list of all events

	function events($attr)
	{
		global $wpdb;
		$events = $wpdb->get_results($wpdb->prepare("SELECT * FROM ".$this->getTableName()));
		$filename = "events";
		$out = $this->loadTemplate( 
			$filename,
			array('events' => $events) 
		);
		return $out;
	}

Return specific details of an event.

     function event($attr)
	{
		return "I'm an event";
	}

The template for my events page creates a table and a URL link to a specific event. 

	<table id="mylist" class="sortable">
    <thead>
        <tr>
            <th>Name</th>
            <th>Tag</th>
            <th>Date</th>
            <th>Location</th>
        </tr>
    </thead>
	<tbody id="the-list">
	<?php foreach ( $events AS $event ) : $class = ('alternate' == $class) ? '' : 'alternate'; ?>
	<?php $url = add_query_arg('event', 1, get_permalink());?>
	<tr class="<?php echo $class ?>">
	<td><a href="<?php echo $url; ?>"><?php echo $event->name ?></a></td>
	<td><?php echo $event->tag ?></td>
	<td><?php echo $event->date ?></td>
	<td><?php echo $event->location ?></td>
	</tr>
	<?php endforeach; ?>
	</tbody>
	</table>

The URL link to the event does not seem to work. Can someone explain what extra information i need to set in the 'add_query_arg' function to ensure WP can correctly route the request?