Slight problem with hide/show buttons

hi again. best wishes for the new year and so (1 week late) but hey.

as i am working on this slideshow i’ve encountered a problem.
for some reason i can’t seem to get my left button to appear when there are for example 3 pages and you pressed the next page button.

maybe a strange formula to explain a problem. but i hope someone can help me. i’ve include the total code. at the bottom you find the code to show/hide

when entering the gallery, the previous button doesn’t show up. that good
but then when i press the next button, the code should show the prev. button. and hide the next button on the last page. i tried to implent an older code that worked fine. but it doesn’t with this one :frowning:

plz help thanx


// SETTING VARIABLES
currentpage = 1;
_global.whichalbum = 1;
naamvanalbum =   this.imageList_xml.firstChild.childNodes.attributes.albumname;
bigframew = 700;
bigframeh = 432;

//////////////////////////////////
function scalerf(w,h)
{
    diffw = (w-bigframew);
    diffh = (h-bigframeh);
    
    if(diffw<=0&&diffh<=0)
    {
        scaler = 1 * 100;
    }
    else if (diffw==Math.max(diffw,diffh)) //scale to height
    {
        scaler = (bigframew/w) * 100;    
    }
    else if (diffh==Math.max(diffw,diffh)) //scale to width
    {
        scaler = (bigframeh/h) * 100;
    }
    return scaler;
}

//LOADCLIP ACTIVITIES
_root.createEmptyMovieClip("looploop",-1000);
var my_mcl = new MovieClipLoader();
myListener = new Object();
myListener.onLoadStart = function (target_mc) 
{
var loadProgress = my_mcl.getProgress(target_mc);
}
myListener.onLoadProgress = function (target_mc, loadedBytes, totalBytes) 
{
////////////////////////////////////////////////////////
// FOR PRELOADER PURPOSES
loaded = loadedBytes;
total = totalBytes;
percentage = Math.round(100*(loaded/total));
progressbar_mc.progresser_mc._xscale = percentage;
////////////////////////////////////////////////////////
}
myListener.onLoadComplete = function (target_mc) 
{
var loadProgress = my_mcl.getProgress(target_mc);
imageframe_mc.hold._alpha=0;
velo = 0;    
imageframe_mc.hold.onEnterFrame = function()
    {
        w = imageframe_mc.hold._width;
        h = imageframe_mc.hold._height;
        if(w!=0&&h!=0)
        {
            scaler = scalerf(w,h);
            if(scaler!=100)
            {
            imageframe_mc.hold._xscale = scaler;
            imageframe_mc.hold._yscale = scaler;
            }
            imageframe_mc.hold._x = (bigframew - (w*(scaler/100)))/2;
            imageframe_mc.hold._y = (bigframeh - (h*(scaler/100)))/2;
                        
        
        if(imageframe_mc.hold._alpha<100)
            {
            accel = 0.3;
            velo = velo + accel;
            imageframe_mc.hold._alpha +=velo;
            
            }
                
        }
    }
}


myListener.onLoadInit = function (target_mc) 
{
//target_mc._width = 100;
//target_mc._width = 100;
} 
myListener.onLoadError = function (target_mc, errorCode) 
{
 } 
my_mcl.addListener(myListener);


///////////////////////////////////////////////////////////////
// XML PARSING
function imageListLoaded(whichalbum) {
    //clear stage
    for (var rr = 0; rr < noofrow * noofcolumn; rr++)
    {
            rr = rr + pageindex;
            this["thumbframe"+rr].removeMovieClip();
            this["thumbframein_mc"+rr].removeMovieClip();
            rr = rr - pageindex;
    }

    //parameters
    param = this.imageList_xml.firstChild.firstChild;
    pc = int(param.attributes.noofcolumn);
    pr = int(param.attributes.noofrow);
    ptx = int(param.attributes.thumbxs);
    pty = int(param.attributes.thumbys);    
    _global.ptw = int(param.attributes.thumbwidth);
    _global.ptl = int(param.attributes.thumbheight);
    //////////////////////////////////////////////////////////////    
    var albumCountXML = this.imageList_xml.firstChild.childNodes;
    albumCount = albumCountXML.length - 1;
    var albumnaamke = this.firstChild.childNodes[t].attributes.albumname;

    var mainNode = this.imageList_xml.firstChild.childNodes[whichalbum].firstChild;
    var listBoxData = createResourceList (mainNode.childNodes,pc,pr,ptx,pty,ptw,ptl);

    albumtextbox.text = "Currently viewing: " + albumCount;
    albumtextbox.background = true;
    albumtextbox.autoSize = true;
    albumtextbox.backgroundColor = 0x999999;
    for (t=1;t<=albumCount;t++)
    {
        /////////////////////////////////////////////////////////////
        //Creating text box
        this.createEmptyMovieClip("albumnames"+t,900+t);
        albumname_mc = this["albumnames"+t];
        albumname_mc.createTextField("albumnametxt"+t,1000+t,0,5,180,80);
        var my_fmt:TextFormat = new TextFormat();
        my_fmt.color = 0x253585;
        my_fmt.font = "Aurora"
        my_fmt.size = 8;
        albumname_mc["albumnametxt"+t].text = this.imageList_xml.firstChild.childNodes[t].attributes.albumname;
        albumname_mc["albumnametxt"+t].setTextFormat(my_fmt);
        albumname_mc._x = 725;
        albumname_mc._y = t * 20;
        albumname_mc.sett = t;
        albumname_mc.onRelease = function()
        {
        currentpage = 1;
        filename.text = "";
        for (var rr = 0; rr < noofrow * noofcolumn; rr++)
        {
            rr = rr + pageindex;
            this["thumbframe"+rr].removeMovieClip();
            this["thumbframein_mc"+rr].removeMovieClip();
            rr = rr - pageindex;
        }
        imageListLoaded(this.sett)
        _global.whichalbum = this.sett;
        }
    }
    

}


function createResourceList(resource_array,noofcolumn,noofrow,thumbxs,thumbys,thumbwidth,thumblength,bigimagewidth) {
    _global.noofcolumn = noofcolumn;
    _global.noofrow = noofrow;
    var listData = new DataProviderClass ();
    resourceCount = resource_array.length;
    noofpage = Math.ceil(resourceCount/(noofcolumn*noofrow));
    ofof.text = "page: "+currentpage+"/"+noofpage;
    var resource, image, tmb;
    images = new Array();
    infotexts = new Array();
    
    pageindex =((currentpage-1) * noofrow *  noofcolumn);
    
    for (var r = 0; r < noofrow; r++)
    {
        
        for (var c = 0; c < noofcolumn; c++) {
            i = (r * noofcolumn) + c + pageindex;
            
            if(i<resourceCount)
                {
                    nodigits = new String(resourceCount);
                    resource = resource_array*;
                    images* = resource.attributes.imagename;
                    infotexts* = resource.attributes.infotext;
                    loadme = "thumbs/"+images*;
                    findme = images*;
                    whichframe = "frame"+i;
                    this.attachMovie("thumbframe","thumbframe"+i,i+1,10);
                    this["thumbframe"+i]._x = (c * thumbwidth)+thumbxs;
                    this["thumbframe"+i]._y = (r * thumblength)+thumbys;
                    createEmptyMovieClip("thumbframein_mc"+i,(i+1)*1000);                    
                    onEnterFrame = function()
                    {
                        for (var tr = 0; tr < noofrow; tr++)
                        {
                            
                            for (var tc = 0; tc < noofcolumn; tc++) {
                                ti = (tr * noofcolumn) + tc + pageindex;
                                
                                if(ti<resourceCount)
                                    {
                                            tw = this["thumbframein_mc"+ti]._width;
                                            th = this["thumbframein_mc"+ti]._height;
                                            this["thumbframein_mc"+ti]._x = this["thumbframe"+ti]._x+(thumbwidth - tw)/2;
                                            this["thumbframein_mc"+ti]._y = this["thumbframe"+ti]._y+(thumblength - th)/2;
                                            
                                    }
                            }
                        }
                    }
                    this["thumbframein_mc"+i].loadMovie(loadme);
                    noofthumbs = (currentpage-1) * noofcolumn * noofrow;
                    nom = noofthumbs;
                    callbig(nom);
                    this.filename.text = " "+images[nom];
                    this["thumbframe"+i].onPress = function()
                        {
                            startsubstring = 10;
                            endsubstring = startsubstring + nodigits.length;
                            largeindex=this._name.substring(startsubstring,endsubstring);
                            callbig(largeindex);
                        }
                }
            }
    }
}

function callbig(index)
{
    filename.text = " "+images[index];
    info.text = infotexts[index];
    imageframe_mc.createEmptyMovieClip("hold",1);

    my_mcl.loadClip("largeimages/"+images[index],this.imageframe_mc.hold);
    /*imageframe_mc.onPress = function()
    {getURL("pics/"+images[index],"_blank");} */

}



imageList_xml = new XML ();
imageList_xml.ignoreWhite = true;
imageList_xml.onLoad = function (success) {
    if (success) {
        imageListLoaded(whichalbum);
        }
};

//////////////////////////////////////////
//HERE IS WHERE YOU DECLARE YOUR XML FILE
imageList_xml.load ("albums.xml");
//////////////////////////////////////////

rightbt.onRelease=function()
{
    if(currentpage != noofpage)
    {
        currentpage ++;
        imageListLoaded(_global.whichalbum);
        }
}

leftbt.onRelease=function()
{
    if(currentpage > 1)
    {
        currentpage --;
        imageListLoaded(_global.whichalbum);
                }
}
////show/hide buttons (looking at how much pages there are from the thumbnail
whoIsOn = 0;
onEnterFrame = function (){
    if (whoIsOn <= 0){
        rightbt._visible = false;       //next
        leftbt._visible = true;   //back
    } else if (whoIsOn >= this.albumname.length-1){ ///here is the problem.
        rightbt._visible = true;  //next
        leftbt._visible = false;  //back
    } else {
        rightbt._visible = true; //next
        leftbt._visible = true;  //back
        }
}
stop();