Index: /sandbox/jabberit_messenger/trophy_expresso/xsl/contactsList.xsl
===================================================================
--- /sandbox/jabberit_messenger/trophy_expresso/xsl/contactsList.xsl	(revision 2706)
+++ /sandbox/jabberit_messenger/trophy_expresso/xsl/contactsList.xsl	(revision 2711)
@@ -13,7 +13,7 @@
 			<div id="{$idUser}__photo" style="position: absolute; left: 5px; top: 5px; width:60px; height:80px; background-image:url('{$path_jabberit}/templates/default/images/photo.png');"/>
 
-			<div style="position: absolute; left: 80px; top: 10px;"> <xsl:value-of select="$full_name"/> </div>
+			<div style="position: absolute; left: 80px; top: 8px;"> <xsl:value-of select="$full_name"/> </div>
 
-			<div style="position: absolute; top: 30px; left: 80px;">
+			<div style="position: absolute; top: 28px; left: 80px;">
 				<button style="width:35px;" alt="Adicionar Contatos" title="Adicionar Contatos" onclick="loadscript.addContact();">
 					<img src="{$path_jabberit}/templates/default/images/users.png"/>
@@ -25,5 +25,5 @@
 			</div>
 
-			<div style="position: absolute; left: 80px; top: 55px; cursor: pointer;" onclick="loadscript.setPresence(this);">
+			<div style="position: absolute; left: 80px; top: 53px; cursor: pointer;" onclick="loadscript.setPresence(this);">
 				<div id="statusJabberImg" style="background: url('{$path_jabberit}/templates/default/images/available.gif'); margin-left: 13px;width:15px; height:15px;"></div>
 				<div id="statusJabberText" style="margin-top: -13px; margin-left: 30px;"> Disponível </div>
@@ -31,7 +31,11 @@
 			</div>
 			
-			<div id="JabberIMRosterLoadingGif" style="position:absolute; left:85px; top:72px; display:block;">
+			<div id="JabberIMRosterLoadingGif" style="position:absolute; left:136px; top:110px; display:block;">
 					<img src='{$path_jabberit}/templates/default/images/loading.gif' style="width:20px; height:20px;"/>
-					<span style="color:red;">Carregando...</span>
+					<span style="color:red;"> Carregando...!!</span>
+			</div>
+			
+			<div id="JabberIMStatusMessage" style="position:absolute; left:4px; top:90px; display:block;">
+				<label style="cursor:pointer;" onclick="loadscript.setMessageStatus(this);">( Digite aqui sua mensagem de Status )</label>
 			</div>
 
Index: /sandbox/jabberit_messenger/trophy_expresso/js/trophyim.js
===================================================================
--- /sandbox/jabberit_messenger/trophy_expresso/js/trophyim.js	(revision 2706)
+++ /sandbox/jabberit_messenger/trophy_expresso/js/trophyim.js	(revision 2711)
@@ -1352,5 +1352,18 @@
 				}
 				else
-					TrophyIM.connection.send($pres( ).c('show').t(_type).tree());
+				{
+					if( loadscript.getStatusMessage() != "" )
+					{
+						var _presence = $pres( );
+						_presence.node.appendChild( Strophe.xmlElement( 'show' ) ).appendChild( Strophe.xmlTextNode( _type ) );
+						_presence.node.appendChild( Strophe.xmlElement( 'status' ) ).appendChild( Strophe.xmlTextNode( loadscript.getStatusMessage() ));
+						
+						TrophyIM.connection.send( _presence.tree() );
+					}
+					else
+					{
+						TrophyIM.connection.send($pres( ).c('show').t(_type).tree());
+					}
+				}
 			}
 		}
@@ -1360,21 +1373,35 @@
 			var _status	= "";
 			
-			if (( _status = prompt("Digite sua mensagem !") ))
-			{
-				for(var resource in TrophyIM.rosterObj.roster[Base64.decode(loadscript.getUserCurrent().jid)].presence )
-				{
-	    			if ( TrophyIM.rosterObj.roster[Base64.decode(loadscript.getUserCurrent().jid)].presence[ resource ].constructor == Function )
-	    				continue;
-	    			
-					if ( TROPHYIM_RESOURCE === ("/" + resource) )
-						_show = TrophyIM.rosterObj.roster[Base64.decode(loadscript.getUserCurrent().jid)].presence[resource].show;
-				}
-
-				var _presence = $pres( );
-				_presence.node.appendChild( Strophe.xmlElement( 'show' ) ).appendChild( Strophe.xmlTextNode( _show ) );
-				_presence.node.appendChild( Strophe.xmlElement( 'status' ) ).appendChild( Strophe.xmlTextNode( _status ) );
+			if( arguments.length < 2 )
+			{
+				if( loadscript.getStatusMessage() != "" )
+					_status = prompt("Digite sua mensagem !!!", loadscript.getStatusMessage());
+				else
+					_status = prompt("Digite sua mensagem !!!");
 				
-				TrophyIM.connection.send( _presence.tree() );
+				var _divStatus = document.getElementById("JabberIMStatusMessage");
+				
+				if( ( _status = _status.replace(/^\s+|\s+$|^\n|\n$/g,"") ) != "")
+					_divStatus.firstChild.innerHTML	= "( " + _status + " )";
+			} 
+			else
+			{
+				_status = arguments[1];
 			}
+
+			for(var resource in TrophyIM.rosterObj.roster[Base64.decode(loadscript.getUserCurrent().jid)].presence )
+			{
+    			if ( TrophyIM.rosterObj.roster[Base64.decode(loadscript.getUserCurrent().jid)].presence[ resource ].constructor == Function )
+    				continue;
+    			
+				if ( TROPHYIM_RESOURCE === ("/" + resource) )
+					_show = TrophyIM.rosterObj.roster[Base64.decode(loadscript.getUserCurrent().jid)].presence[resource].show;
+			}
+
+			var _presence = $pres( );
+			_presence.node.appendChild( Strophe.xmlElement( 'show' ) ).appendChild( Strophe.xmlTextNode( _show ) );
+			_presence.node.appendChild( Strophe.xmlElement( 'status' ) ).appendChild( Strophe.xmlTextNode( _status ) );
+			
+			TrophyIM.connection.send( _presence.tree() );
 		}
 	},
Index: /sandbox/jabberit_messenger/trophy_expresso/js/jscode/loadIM.js
===================================================================
--- /sandbox/jabberit_messenger/trophy_expresso/js/jscode/loadIM.js	(revision 2706)
+++ /sandbox/jabberit_messenger/trophy_expresso/js/jscode/loadIM.js	(revision 2711)
@@ -10,4 +10,5 @@
 	var selectEditable	= null;
 	var showhidden 		= null;
+	var _statusMessage	= "";
 	var timeoutId		= null;
 	var userCurrent		= null;
@@ -96,4 +97,5 @@
 			return;
 		}
+		
 		/**************************************************************************/
 		
@@ -169,5 +171,9 @@
 			if( _status == "xa" )
 			{
-				TrophyIM.setPresence("available");
+				if( getStatusMessage() != "")
+					TrophyIM.setPresence("available", getStatusMessage());
+				else
+					TrophyIM.setPresence("available");
+				
 				loadscript.setStatusJabber("Disponível","available");
 			}
@@ -194,5 +200,9 @@
 			if( _status == "available" )
 			{
-				TrophyIM.setPresence("xa");
+				if(getStatusMessage() != "")
+					TrophyIM.setPresence("xa", getStatusMessage());
+				else
+					TrophyIM.setPresence("xa");
+				
 				loadscript.setStatusJabber("Não Disponível","xa");
 			}
@@ -279,4 +289,9 @@
 			_divPhoto.style.backgroundImage = 'url(' + _imgUser + ')';
 		}
+	}
+	
+	function getStatusMessage()
+	{
+		return _statusMessage;
 	}
 	
@@ -747,4 +762,70 @@
 	}
 	
+	function setMessageStatus()
+	{
+		if( arguments.length > 0 )
+		{
+			var _element = arguments[0];
+			var _parent	 = _element.parentNode;			
+
+			if( _element.nodeName.toLowerCase() == "label")
+			{
+				var _input				= document.createElement("input"); 
+					_input.size			= "35";
+					_input.maxlength	= "35";
+					_input.style.border = "0";
+					_input.value	 	= _element.innerHTML;
+					
+				// OnkeyUp
+				configEvents( _input, "onkeyup", function(e)
+						{
+							if( e.keyCode == 13 ) loadscript.setMessageStatus(_input, _element);
+						}
+				);
+				
+				// Onblur	
+			    configEvents(_input, "onblur", function(){ loadscript.setMessageStatus(_input, _element)});		
+
+			    
+				if( _parent != null )
+				{	
+					// Remove label
+					if( _element != null )
+						_parent.removeChild( _element );
+						
+					// Add Input
+					if( _input != null ) 
+						_parent.appendChild( _input );
+				}
+
+				_input.focus();
+				_input.select();
+			}
+			else
+			{
+				var _label		= arguments[1];
+				_statusMessage	= _element.value.replace(/^\(+|\)+$/g,"");
+				
+				if( ( _statusMessage = _statusMessage.replace(/^\s+|\s+$|^\n|\n$/g,"") ) != "")
+					_label.innerHTML = "( " + _statusMessage + " )";
+				else
+					_label.innerHTML = "( Digite aqui sua mensagem de Status )";
+				
+				if( _parent != null )
+				{	
+					// Remove Input
+					if( _element != null )
+						_parent.removeChild( _element );
+						
+					// Add Label
+					if( _label != null ) 
+						_parent.appendChild( _label );
+				}
+				
+				// Send Status Message
+				TrophyIM.setPresence("status", _statusMessage );
+			}	
+		}
+	}
 	
 	function setPreferences()
@@ -989,4 +1070,5 @@
 	loadIM.prototype.configEvents		= configEvents;
 	loadIM.prototype.getPhotoUser		= getPhotoUser;
+	loadIM.prototype.getStatusMessage	= getStatusMessage;
 	loadIM.prototype.getShowContactsOffline	= getShowContactsOffline;
 	loadIM.prototype.getUserCurrent		= getUserCurrent;
@@ -1001,4 +1083,5 @@
 	loadIM.prototype.searchUser			= searchUser
 	loadIM.prototype.setAutorization	= setAutorization;
+	loadIM.prototype.setMessageStatus	= setMessageStatus;
 	loadIM.prototype.setPreferences		= setPreferences;
 	loadIM.prototype.setPresence		= setPresence;
