Index: /trunk/jabberit_messenger/js/load.js
===================================================================
--- /trunk/jabberit_messenger/js/load.js	(revision 1801)
+++ /trunk/jabberit_messenger/js/load.js	(revision 2225)
@@ -372,5 +372,15 @@
 		if( document.getElementById(_win_contacts.id_window + "__content") == null )
 		{
-			var contacts = function()
+			
+			var _params = {
+							'path' : path_jabberit,
+							'width' : ( is_ie ) ? '100%' : '220px'
+			};
+			
+			_win_contacts.content = Xtools.parse(Xtools.xml('contacts_jabberit'), 'contacts_jabberit.xsl', _params );
+			
+			winBuild( _win_contacts );
+			
+			/*var contacts = function()
 			{
 				var _width = '220px';
@@ -382,9 +392,9 @@
 				var _content = document.getElementById(_win_contacts.id_window + "__content");
 				_content.innerHTML = Xtools.parse(Xtools.xml('contacts_jabberit'), 'contacts_jabberit.xsl', {'path' : path_jabberit, 'width' : _width});
-			}
-		
-			winBuild( _win_contacts );
-
-			setTimeout( contacts , 250);
+			}*/
+		
+			//winBuild( _win_contacts );
+
+			//setTimeout( contacts , 250);
 		}
 	}
@@ -392,4 +402,22 @@
 	function preferences()
 	{
+		var _params = {
+					   'path'  : path_jabberit,
+					   'lang1' : jabberitGetLang('Your Preferences'),
+					   'lang2' : jabberitGetLang('Connection'),	
+					   'lang3' : jabberitGetLang('Enable Auto Login IM'),
+					   'lang4' : jabberitGetLang('Users OffLine'),
+					   'lang5' : jabberitGetLang('Show friends Offline'),
+					   'lang6' : jabberitGetLang('Save'),
+					   'lang7' : jabberitGetLang('Cancel'),
+					   'lang8' : jabberitGetLang('Window'),
+					   'lang9' : jabberitGetLang('Open as Pop-Up Window'),
+					   'lang10' : jabberitGetLang('Away'),
+					   'lang11' : jabberitGetLang('Set status to away after'),
+					   'lang12' : jabberitGetLang('minutes'),						   
+					   'langYes': jabberitGetLang('Yes'),
+					   'langNo' : jabberitGetLang('No')											   
+	  	};
+		
 		var _win_preferences = { 
 									id_window	 : "jabberit_preferences",
@@ -403,39 +431,12 @@
 									zindex		 : _ZINDEX++,
 									title		 : 'Expresso Messenger - ' + jabberitGetLang('Preferences'),
-									closeAction  : "remove"
-								};
+									closeAction  : "remove",
+									content		 : Xtools.parse(Xtools.xml('preferences_jabberit'), 'preferences_jabberit.xsl', _params)
+		};
+
+		winBuild(_win_preferences);
 
 		var _preferences = function()
 		{
-			
-			var _params = {
-						   'path'  : path_jabberit,
-						   'lang1' : jabberitGetLang('Your Preferences'),
-						   'lang2' : jabberitGetLang('Connection'),	
-						   'lang3' : jabberitGetLang('Enable Auto Login IM'),
-						   'lang4' : jabberitGetLang('Users OffLine'),
-						   'lang5' : jabberitGetLang('Show friends Offline'),
-						   'lang6' : jabberitGetLang('Save'),
-						   'lang7' : jabberitGetLang('Cancel'),
-						   'lang8' : jabberitGetLang('Window'),
-						   'lang9' : jabberitGetLang('Open as Pop-Up Window'),
-						   'lang10' : jabberitGetLang('Away'),
-						   'lang11' : jabberitGetLang('Set status to away after'),
-						   'lang12' : jabberitGetLang('minutes'),						   
-						   'langYes': jabberitGetLang('Yes'),
-						   'langNo' : jabberitGetLang('No')											   
-					  	};
-			var _content = document.getElementById("jabberit_preferences" + "__content");
-			_content.innerHTML = Xtools.parse(Xtools.xml('preferences_jabberit'), 'preferences_jabberit.xsl', _params);
-			
-			var _pButtons = {
-					'lang1' : jabberitGetLang('Save'),
-					'lang2' : jabberitGetLang('Close'),
-					'onclickClose' : 'winBuild("jabberit_preferences","remove");',
-					'onclickSubmit' : 'javascript:loadscript.setPrefe();'
-				}; 
-			
-			document.getElementById('buttons_preferences_jabberit').innerHTML = Xtools.parse(Xtools.xml('buttons_main'), 'buttons.xsl', _pButtons); 
-
 			// Element openWindowJabberit
 			var value1 = flagOpenIM.split(':');
@@ -461,9 +462,17 @@
 			var element3 = document.getElementById(value3[0]);
 			element3.value = value3[1];
-		}
-
-		winBuild(_win_preferences);
-		
-		setTimeout(function(){ _preferences();}, 250);
+			
+			
+			var _pButtons = {
+					'lang1' : jabberitGetLang('Save'),
+					'lang2' : jabberitGetLang('Close'),
+					'onclickClose' : 'winBuild("jabberit_preferences","remove");',
+					'onclickSubmit' : 'javascript:loadscript.setPrefe();'
+			}; 
+			
+			document.getElementById('buttons_preferences_jabberit').innerHTML = Xtools.parse(Xtools.xml('buttons_main'), 'buttons.xsl', _pButtons);
+		}
+
+		setTimeout(function(){ _preferences();}, 220);
 	}
 
@@ -563,32 +572,36 @@
 	}
 	
+	function windowConf(pLeft)
+	{
+		if( !is_ie )
+			var sizeW = { w : 234, h : 432 };
+		else
+			var sizeW = { w : 264, h : 430 };
+		
+		_win_contacts = {
+							id_window	 : "jabberit_contacts",
+							width		 : sizeW.w,
+							height		 : sizeW.h,
+							top		 	 : 60,
+							left		 : pLeft,
+							draggable	 : true,
+							visible	 	 : "display",
+							resizable	 : true,
+							zindex		 : _ZINDEX++,
+							title		 : "Expresso Messenger",
+							closeAction  : "hidden",
+							content		 : ""
+		};
+	}
+	
 	function windowHidden()
 	{
 		if( _win_contacts == null )
 		{
-			if( !is_ie )
-				var sizeW = { w : 234, h : 432 };
-			else
-				var sizeW = { w : 264, h : 430 };
-			
-			_win_contacts = {
-								id_window	 : "jabberit_contacts",
-								width		 : sizeW.w,
-								height		 : sizeW.h,
-								top		 	 : 60,
-								left		 : -1500,
-								draggable	 : true,
-								visible	 	 : "display",
-								resizable	 : true,
-								zindex		 : _ZINDEX++,
-								title		 : "Expresso Messenger",
-								closeAction  : "hidden"
-							};
-			
+			windowConf(-1500);
 			windowContacts();
 		}
 		else
 			winBuild( _win_contacts.id_window , "display" );
-		
 	}
 	
@@ -597,23 +610,5 @@
 		if( _win_contacts == null )
 		{
-			if( !is_ie )
-				var sizeW = { w : 234, h : 432 };
-			else
-				var sizeW = { w : 264, h : 430 };
-			
-			_win_contacts = {
-								id_window	 : "jabberit_contacts",
-								width		 : sizeW.w,
-								height		 : sizeW.h,
-								top		 	 : 60,
-								left		 : 70,
-								draggable	 : true,
-								visible	 	 : "display",
-								resizable	 : true,
-								zindex		 : _ZINDEX++,
-								title		 : "Expresso Messenger",
-								closeAction  : "hidden"
-							};
-			
+			windowConf(70);
 			windowContacts();			
 		}
@@ -625,7 +620,11 @@
 	{
 		if( flagOpenPopup === 'openWindowJabberitPopUp:true' )
-			openPopup();					
+		{
+			openPopup();
+		}
 		else
+		{
 			openWindow();
+		}
 	}
 
