Complicated image menu Problem

Hello All.
Im new here and I’m trying to program a drawer style image
viewer.
I attached the file because it’s really complicated to explain.
What I want to do is when theres already a “drawer” open and you click on another images it close the other drawer.

heres the code

import fl.transitions.Tween;
import fl.transitions.easing.*;

var itemVar:Array = new Array();
var active = 0;
var var_open:Number = 1;
var itemClick:Number;
var somethingopen  = "Close";
// chargement du xml
var xmlLoader:URLLoader = new URLLoader();
var xmlData:XML = new XML();
xmlLoader.addEventListener(Event.COMPLETE, LoadXML);
xmlLoader.load(new URLRequest("items.xml"));

function LoadXML(e:Event):void {
	xmlData = new XML(e.target.data);
	ParseBooks(xmlData);
}

// création des items à partir du xml
function ParseBooks(bookInput:XML):void {
	var bookAttributes:XMLList = bookInput.item.attributes();
	var i:Number = 0;
	for each (var bookSRC:XML in bookAttributes) {
		var itemMovieClip:item = new item;
		itemVar.push(itemMovieClip);
		this.addChild(itemMovieClip);
		itemMovieClip.x = 30*i;
		itemMovieClip.itemName = bookSRC;
		itemMovieClip.itemNum = i;
		itemMovieClip.addEventListener(MouseEvent.CLICK, onClick);
		i++;
	}
}
function onClick(event:MouseEvent) {
	if (event.currentTarget.var_open == 1) {
		trace ('test1');
		somethingopen  = "Close";
		trace (somethingopen);
		for (var kk:int = event.currentTarget.itemNum+1; kk < itemVar.length; kk++) {
			trace ("move1 ->" + kk)
			trace ("kk="+kk);
			new Tween(itemVar[kk], "x", Strong.easeOut, itemVar[kk].x, 30 * kk, 1, true);
		}
	} else if (event.currentTarget.var_open == 2) {
		trace ('test2')
		active = event.currentTarget.itemNum+1;
		somethingopen  = "Open";
		trace (somethingopen);
		for (var z:int = 0; z <= itemVar.length; z++) {
			if (z == active) {
				trace (z);
				new Tween(itemVar[z], "x", Strong.easeOut, itemVar[z].x, 30 * z, 1, true);
				}
			}
		for (var k:int = event.currentTarget.itemNum+1; k < itemVar.length; k++) {
			trace ("kk= "+kk);
			trace ("move2 ->" + k)
			new Tween(itemVar[k], "x", Strong.easeOut, itemVar[k].x, (30 * k) + event.currentTarget.width - 30, 1, true);
		}
	} else if (event.currentTarget.var_open ==3) {
		somethingopen  = "Open";
		trace (somethingopen);
		trace ('test3')
		active = event.currentTarget.itemNum+1;
		for (var z:int = 0; z <= itemVar.length; z++) {
			if (z == active) {
				trace (z);
				new Tween(itemVar[z], "x", Strong.easeOut, itemVar[z].x, 30 * z, 1, true);
				}
			}

		for (var kkk:int = event.currentTarget.itemNum+1; kkk < itemVar.length; kkk++) {
			trace ("move 3->" + kkk)
			trace ("kkkk="+kkkk);
			new Tween(itemVar[kkk], "x", Strong.easeOut, itemVar[kkk].x, (30 * kkk) + event.currentTarget.width - 30, 1, true);
		}
	} else if (event.currentTarget.var_open ==4) {
		somethingopen  = "Close";
		trace (somethingopen);
		for (var kkkk:int = event.currentTarget.itemNum+1; kkkk < itemVar.length; kkkk++) {
			trace ("move4 ->" + kkkk)
			trace ("kkkkk="+kkkk);
			new Tween(itemVar[kkkk], "x", Strong.easeOut, itemVar[kkkk].x, 30 * kkkk, 1, true);
		}
	}
}

thx in advance