I am having this problem where the url is not not one for the rendered form. For example if step2 form is rendered, it shows url for step1 in url bar. I couldn't identify the problem Here is code for wizard
<?php
/**
* Controller to initiate slot filling mechanism
* @param user $account
* @param mainlist_id $mid
* @param species_id $species
*/
function slot($account, $type, $mid, $js , $species, $step = NULL)
{
$types_having_cage = array('bird');
if ($js)
{
ctools_include('modal');
ctools_include('ajax');
}
$list_url = "user/$account->uid/categories/$type/list/$mid/";
$form_info = array(
'id' => 'slot',
'path' => $list_url . 'nojs/'."$species/%step", //%step will be replaced with key for form.
'show trail' => TRUE,
'show back' => TRUE,
'show cancel' => TRUE,
'show return' => FALSE,
'next callback' => 'slot_wizard_next',
'finish callback' => 'slot_wizard_finish',
'cancel callback' => 'slot_wizard_cancel',
'order' => array(
'options' => t('Choose option'),
'upload' => t('Upload image'),
'checkmark' => t('Checkmark'),
'details' => t('Details'),
),
'forms' => array(
'options' => array(
'form id' => 'slot_options_form',
),
'upload' => array(
'form id ' => 'slot_upload_form',
),