Carousel Problem

I have created a Carousel from the tutorial on gotoandlearn.com site and everything works fine. When you click on an item in the carousel the item moves to the left and text appears to the right of that. When you click on the item again, the carousel reappears. My problem is that I need to add a back button to make it more intuitive. I have button that appears like I want it to but I cant get it to work like its does when you click the actual item.

Here is my code. I have highlighted in red where i added the code to make the button work.


import mx.utils.Delegate;
import mx.transitions.Tween;
import mx.transitions.easing.*;

this.attachMovie("fade","fade1",12000);

var numOfItems:Number;
var radiusX:Number = 250;
var radiusY:Number = 75;
var centerX:Number = Stage.width/2;
var centerY:Number = 230;
var speed:Number = 0.05;
var perspective:Number = 70;
var home:MovieClip = this;

theTitle._alpha = 0;
theText._alpha = 0;
theLink._alpha = 0;
backPub._alpha = 0;

var tooltip:MovieClip = this.attachMovie("tooltip", "tooltip", 10000);
tooltip._alpha = 0;

var xml:XML = new XML();
xml.ignoreWhite = true;

xml.onLoad = function()
{
    var nodes = this.firstChild.childNodes;
    numOfItems = nodes.length;
    for (var i=0;i<numOfItems;i++) 
    {
        
        
        var t = home.attachMovie("item","item"+i,i+1);    

        t.angle = i * ((Math.PI*2)/numOfItems);
        t.onEnterFrame = mover;
        t.toolText = nodes*.attributes.tooltip;
        t.title = nodes*.attributes.title;
        t.content = nodes*.attributes.content;
        t.link = nodes*.attributes.link;
        t.icon.inner.loadMovie(nodes*.attributes.image);
        t.ref.inner.loadMovie(nodes*.attributes.image);
        t.icon.onRollOver = over;
        t.icon.onRollOut = out;
        t.icon.onRelease = released;
    }
}

function over()
{
    home.tooltip.tipText.text = this._parent.toolText;
    home.tooltip._x = this._parent._x - this._parent._width/2;
    home.tooltip._y = this._parent._y - this._parent._height*.7;
    home.tooltip.onEnterFrame = Delegate.create(this,moveTip);
    home.tooltip._alpha = 100;
}

function out()
{
    delete home.tooltip.onEnterFrame;
    home.tooltip._alpha = 0;
}

function released()
{
    home.tooltip._alpha = 0;
    for(var i=0;i<numOfItems;i++)
    {
        var t:MovieClip = home["item"+i];
        t.xPos = t._x;
        t.yPos = t._y;
        t.theScale = t._xscale;
        delete t.icon.onRollOver;
        delete t.icon.onRollOut;
        delete t.icon.onRelease;
        delete t.onEnterFrame;
        if(t != this._parent)
        {
            var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,t._xscale,0,1,true);
            var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,t._yscale,0,1,true);
            var tw3:Tween = new Tween(t,"_alpha",Strong.easeOut,100,0,1,true);
        }
        else 
        {
            var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,t._xscale,110,1,true);
            var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,t._yscale,110,1,true);
            var tw3:Tween = new Tween(t,"_x",Strong.easeOut,t._x,110,1,true);
            var tw4:Tween = new Tween(t,"_y",Strong.easeOut,t._y,275,1,true);
            var tw5:Tween = new Tween(theTitle,"_alpha",Strong.easeOut,0,100,1,true);
            var tw6:Tween = new Tween(theText,"_alpha",Strong.easeOut,0,100,1,true);
            var tw7:Tween = new Tween(theLink,"_alpha",Strong.easeOut,0,100,1,true);
            var tw8:Tween = new Tween(backPub,"_alpha",Strong.easeOut,0,100,1,true);
            
            var page = t.link;
             theLink.onRelease = function()
             {
                getURL(page, "_blank");
             }
                    
            theTitle.text = t.title;
            theText.text = t.content;
            theLink.text = t.link;

            var s:Object = this;
            tw.onMotionStopped = function()
            {
                s.onRelease = unReleased;
                [COLOR=Red]backPub.onRelease = unReleased;[/COLOR]
            }
            
        }
    }
}

function unReleased()
{
    delete this.onRelease;
    var tw:Tween = new Tween(theTitle,"_alpha",Strong.easeOut,100,0,0.5,true);
    var tw2:Tween = new Tween(theText,"_alpha",Strong.easeOut,100,0,0.5,true);
    var tw3:Tween = new Tween(theLink,"_alpha",Strong.easeOut,100,0,0.5,true);
    var tw4:Tween = new Tween(backPub,"_alpha",Strong.easeOut,100,0,0.5,true);
    for(var i=0;i<numOfItems;i++)
    {
        var t:MovieClip = home["item"+i];
        if(t != this._parent)
        {
            var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,0,t.theScale,1,true);
            var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,0,t.theScale,1,true);
            var tw3:Tween = new Tween(t,"_alpha",Strong.easeOut,0,100,1,true);
        }
        else 
        {
            var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,100,t.theScale,1,true);
            var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,100,t.theScale,1,true);
            var tw3:Tween = new Tween(t,"_x",Strong.easeOut,t._x,t.xPos,1,true);
            var tw4:Tween = new Tween(t,"_y",Strong.easeOut,t._y,t.yPos,1,true);
            tw.onMotionStopped = function()
            {
                for(var i=0;i<numOfItems;i++)
                {
                    var t:MovieClip = home["item"+i];
                    t.icon.onRollOver = Delegate.create(t.icon,over);
                    t.icon.onRollOut = Delegate.create(t.icon,out);
                    t.icon.onRelease = Delegate.create(t.icon,released);
                    t.onEnterFrame = mover;
                }
            }
        }
    }

}

function moveTip()
{
    home.tooltip._x = this._parent._x - this._parent._width/2;
    home.tooltip._y = this._parent._y - this._parent._height*.7;
}

xml.load("covers/covers.xml");


function mover() 
{
    this._x = Math.cos(this.angle) * radiusX + centerX;
    this._y = Math.sin(this.angle) * radiusY + centerY;
    var s:Number = (this._y - perspective) / (centerY+radiusY-perspective);
    this._xscale = this._yscale = s * 100;
    this.angle += this._parent.speed;
    this.swapDepths(Math.round(this._xscale) + 100);
}

////Speed of Movement////
this.onMouseMove = function()
{
    speed = (this._xmouse - centerX) / 6200;
}