Just started implementing smarty for the first time. Overall a very cool system, but I am having a bit of an issue with making nested arrays play well with sections.

What I am trying to do is display a nested html list from the following data:

Code:
Array
(
    [0] => Array
        (
            [ID] => 1
            [Name] => test
            [items] => Array
                (
                    [0] => Array
                        (
                            [ID] => 2
                            [Name] => test1
                            [links] => Array
                                (
                                    [0] => Array
                                        (
                                            [ID] => 1
                                            [Name] => bandt
                                            [Link] => http://bootsandtracks.com
                                        )

                                    [1] => Array
                                        (
                                            [ID] => 2
                                            [Name] => bandtpdf
                                            [Link] => http://bootsandtracks.com/AARFiles/FF40_57.pdf
                                        )

                                )

                        )

                )

        )

)
My smartycode is
Code:
{*Smarty Template*}
<p>Select a campaign, item or click thru to edit. Use the buttons above to add new items.</p>
{section name=campaignlist loop=$Campaigns}
	{if $smarty.section.campaignlist.first}
		<ul>
	{/if}
		<li><a href="campaigns.php?ID={$Campaigns[campaignlist].ID}">{$Campaigns[campaignlist].Name}</a>
			{section name=itemlist loop=$Campaigns[campaignlist].items}
				{if $smarty.section.itemlist.first}
					<ul>
				{/if}
					<li><a href="items.php?ID={$Campaigns[campaignlist][itemlist].ID}">{$Campaigns[campaignlist][itemlist].Name}</a>
						{section name=linklist loop=$Campaigns[campaignlist][itemlist].links}
							{if $smarty.section.linklist.first}
								<ul>
							{/if}
								<li><a href="links.php?ID={$Campaigns[campaignlist][itemlist][linklist].ID}">{$Campaigns[campaignlist][itemlist][linklist].Name}</a></li>
							{if $smarty.section.linklist.last}
								</ul>
							{/if}							
						{/section}
					</li>
				{if $smarty.section.itemlist.last}
					</ul>
				{/if}
			{/section}
		</li>
	{if $smarty.section.campaignlist.last}
		</ul>
	{/if}
{/section}
The error I am getting is an "undefined offset: 0" in the compiled template.

The basic idea of what I am doing is this:


I have an indexed array ($Campaigns). Each item is an associative array consisting of three fields: ID, Name, items. The former two are scalar values. The latter is an indexed array.

$Campaign.IDX.items is also an indexed array consisting of associative arrays. These arrays have three fields: ID, Name, links. The latter is also an indexed array consisisting, of, you guessed it, associative arrays.

I am trying to display a nested HTML list in the end.

Anyone have any advice?