Index: trunk/instant_messenger/xsl/information_user.xsl
===================================================================
--- trunk/instant_messenger/xsl/information_user.xsl	(revision 57)
+++ trunk/instant_messenger/xsl/information_user.xsl	(revision 60)
@@ -32,22 +32,11 @@
 				</tr>
 				<tr>
-					<td width="30%" align="right"><xsl:value-of select="getlang/ROLE"/> .: </td>
-			     	<xsl:choose>
-			          <xsl:when test="vcard/role">
-						<td><input id="ORGNAME" type="text" size="17" maxlength="17" value="{vcard/role}"/></td>
-					  </xsl:when>
-			          <xsl:otherwise>
-						<td><input id="ORGNAME" type="text" size="17" maxlength="17" value="{vcard/ROLE}"/></td>
-			          </xsl:otherwise>
-			        </xsl:choose>
-				</tr>
-				<tr>
 					<td width="30%" align="right"><xsl:value-of select="getlang/ORGNAME"/> .: </td>
 			     	<xsl:choose>
 			          <xsl:when test="vcard/orgname">
-						<td><input id="ORGUNIT" type="text" size="10" maxlength="10" value="{vcard/orgname}"/></td>
+						<td><input id="ORGNAME" type="text" size="17" maxlength="17" value="{vcard/orgname}"/></td>
 					  </xsl:when>
 			          <xsl:otherwise>
-						<td><input id="ORGUNIT" type="text" size="10" maxlength="10" value="{vcard/ORGNAME}"/></td>
+						<td><input id="ORGNAME" type="text" size="17" maxlength="17" value="{vcard/ORGNAME}"/></td>
 			          </xsl:otherwise>
 			        </xsl:choose>
@@ -57,8 +46,19 @@
 			     	<xsl:choose>
 			          <xsl:when test="vcard/orgunit">
-						<td><input id="ROLE" type="text" size="25" maxlength="25" value="{vcard/orgunit}"/></td>
+						<td><input id="ORGUNIT" type="text" size="10" maxlength="10" value="{vcard/orgunit}"/></td>
 					  </xsl:when>
 			          <xsl:otherwise>
-						<td><input id="ROLE" type="text" size="25" maxlength="25" value="{vcard/ORGUNIT}"/></td>
+						<td><input id="ORGUNIT" type="text" size="10" maxlength="10" value="{vcard/ORGUNIT}"/></td>
+			          </xsl:otherwise>
+			        </xsl:choose>
+				</tr>
+				<tr>
+					<td width="30%" align="right"><xsl:value-of select="getlang/ROLE"/> .: </td>
+			     	<xsl:choose>
+			          <xsl:when test="vcard/role">
+						<td><input id="ROLE" type="text" size="25" maxlength="25" value="{vcard/role}"/></td>
+					  </xsl:when>
+			          <xsl:otherwise>
+						<td><input id="ROLE" type="text" size="25" maxlength="25" value="{vcard/ROLE}"/></td>
 			          </xsl:otherwise>
 			        </xsl:choose>
Index: trunk/instant_messenger/xsl/window.xsl
===================================================================
--- trunk/instant_messenger/xsl/window.xsl	(revision 55)
+++ trunk/instant_messenger/xsl/window.xsl	(revision 60)
@@ -8,12 +8,13 @@
    </head>
    <body>
-      <div id="{@id}_im_window_master" class="master" style="top:{@top};left:{@left};height:{(@height + 48)};width:{(@width + 12)};{@style}">
-         <div id="{@id}_im_window" class="pai" style="height:{(@height + 40)}">
+      <div id="{@id}_im_window_master" class="master" style="top:{@top};left:{@left};height:{(@height + 48)};width:{(@width + 12)};{@style};">
+        <div id="{@id}_im_window" class="pai" style="height:{(@height + 40)};">
          	<div id="{@id}_im_window_icon" class="im_window_icon" />
             <div class="tit"><xsl:value-of select="@title" /></div>
             <xsl:apply-templates select="/" mode='buttons' />
-            <div class="filho" id="{@id}_im_window_body_inner" style="width:{@width};height:{@height}" />
-         </div>
+            <div class="filho" id="{@id}_im_window_body_inner" style="width:{@width};height:{@height};" />
+         </div>      
       </div>
+
       <div class="im-windowfantom-des" id="{@id}_im_window_fantom" />
       <div class="im-windowfantom-des" id="{@id}_im_window_movable" />
Index: trunk/instant_messenger/docs/change_log.txt
===================================================================
--- trunk/instant_messenger/docs/change_log.txt	(revision 57)
+++ trunk/instant_messenger/docs/change_log.txt	(revision 60)
@@ -15,2 +15,6 @@
 - Permanência de estado ( online, offline, ausente, invisível), quando é feito o refresh
 de página no expresso.
+
+21/08/2007
+- Corrigido a mudança de status automática
+- Layout do adicionar contato não gera mais scrolls
Index: trunk/instant_messenger/js/im_preferences.js
===================================================================
--- trunk/instant_messenger/js/im_preferences.js	(revision 59)
+++ trunk/instant_messenger/js/im_preferences.js	(revision 60)
@@ -387,5 +387,5 @@
 	IM_Preferences.prototype.vCardAdd = function()
 	{
-		var el_vcard = new Array('FN','NICKNAME','ROLE','ORGNAME','ORGUNIT','BDAY','DESC');
+		var el_vcard = new Array('FN','NICKNAME','ORGNAME','ORGUNIT','ROLE','BDAY','DESC');
 		var vcard 	 = "";
 		var value 	 = "";
@@ -414,5 +414,5 @@
 		};
 		XMLTools.request('$this.Ujabber.newVcard','POST',handler_vcard_add,"vcard="+escape(vcard));	
-		alert('Informações Cadastradas / Adicionads !!!');	
+		alert('Informações Cadastradas / Adicionadas !!!');	
 	}
 	
Index: trunk/instant_messenger/js/im_win.js
===================================================================
--- trunk/instant_messenger/js/im_win.js	(revision 59)
+++ trunk/instant_messenger/js/im_win.js	(revision 60)
@@ -10,43 +10,39 @@
       try
       {
-			backFantom = func.newEl('div');
+			var backFantom = func.newEl('div');
 			func.confEl(backFantom, 'id', 'backFantom');
 			func.confEl(backFantom, 'style', 'position:absolute;top:0px;left:0px;width:100%;height:100%;z-Index:-1;');
 
-			test = func.newEl('div');
-			func.confEl(test, 'id', 'test');
-			func.confEl(test, 'style', 'visibility: hidden;');
-
-			menu_contato = func.newEl('div');
+			var menu_contato = func.newEl('div');
 			func.confEl(menu_contato, 'id', 'menu_contato');
 			func.confEl(menu_contato, 'class', 'menu_im');
 			func.confEl(menu_contato, 'style', 'position:absolute;z-index:99999');
 
-			emotions = func.newEl('div');
+			var emotions = func.newEl('div');
 			func.confEl(emotions, 'id', 'shared_emotions');
 			func.confEl(emotions, 'class', 'emotionFrame');
 			func.confEl(emotions, 'style', 'position:absolute;padding:1px;left:350px;visibility:hidden;top:0px');
 
-			font_name = func.newEl('div');
+			var font_name = func.newEl('div');
 			func.confEl(font_name, 'id', 'shared_fontName');
 			func.confEl(font_name, 'class', 'statusMenu');
 			func.confEl(font_name, 'style', 'position:absolute;visibility:hidden;padding:1px;left:400px;top:0px');
 
-			font_size = func.newEl('div');
+			var font_size = func.newEl('div');
 			func.confEl(font_size, 'id', 'shared_fontSize');
 			func.confEl(font_size, 'class', 'statusMenu');
 			func.confEl(font_size, 'style', 'position:absolute;visibility:hidden;padding:1px;left:400px;top:0px');
 
-			font_color = func.newEl('div');
+			var font_color = func.newEl('div');
 			func.confEl(font_color, 'id', 'shared_fontColor');
 			func.confEl(font_color, 'class', 'statusMenu');
 			func.confEl(font_color, 'style', 'position:absolute;visibility:hidden;padding:1px;left:400px;top:0px');
 
-			font_style = func.newEl('div');
+			var font_style = func.newEl('div');
 			func.confEl(font_style, 'id', 'shared_fontStyle');
 			func.confEl(font_style, 'class', 'statusMenu');
 			func.confEl(font_style, 'style', 'position:absolute;visibility:hidden;padding:1px;left:400px;top:0px');
 
-			func.insEl(backFantom, test, menu_contato, emotions, font_name, font_size, font_color, font_style, false);
+			func.insEl(backFantom, menu_contato, emotions, font_name, font_size, font_color, font_style, false);
 
 			emotions.innerHTML = Templates.emotions();
@@ -56,18 +52,18 @@
 			font_style.innerHTML = Templates.font_style();
 
-			pId = 'contacts';
-
-			main_menu_all = func.newEl('div');
+			var pId = 'contacts';
+
+			var main_menu_all = func.newEl('div');
 			func.confEl(main_menu_all, 'style', 'margin: 3px;');
 
-			main_menu_head = func.newEl('div');
+			var main_menu_head = func.newEl('div');
 			func.confEl(main_menu_head, 'id', pId + '_im_window_body_inner_head');
 			func.confEl(main_menu_head, 'style', 'margin: 0px 0px 3px 0px; border: 1px solid #809aa9; display: block;');
 
-			main_menu_vcard = func.newEl('div');
+			var main_menu_vcard = func.newEl('div');
 			func.confEl(main_menu_vcard, 'id', 'im_vcard_contacts');
 			func.confEl(main_menu_vcard, 'style', 'display: none;');
 
-			main_menu_body = func.newEl('div');
+			var main_menu_body = func.newEl('div');
 			func.confEl(main_menu_body, 'id', 'div_contacts');
 			func.confEl(main_menu_body, 'style', 'border: 1px solid #809aa9;');
@@ -75,26 +71,26 @@
 			func.insEl(main_menu_head, main_menu_vcard, main_menu_body, main_menu_all);
 
-			main_menu_head_picture = func.newEl('img');
+			var main_menu_head_picture = func.newEl('img');
 			func.confEl(main_menu_head_picture, 'id', pId + '_avatar');
 			func.confEl(main_menu_head_picture, 'src', img_photo.src);
 			func.confEl(main_menu_head_picture, 'style', 'float: left; height: 65px; margin: 2px; width: 49px;');
 
-			main_menu_head_name = func.newEl('span');
+			var main_menu_head_name = func.newEl('span');
 			func.confEl(main_menu_head_name, 'id', 'span_nickname');
-			main_menu_head_name_txt = document.createTextNode(" your nickname");
+			var main_menu_head_name_txt = document.createTextNode(" your nickname");
 			func.insEl(main_menu_head_name_txt, main_menu_head_name);
 
-			br1 = func.newEl('br');
-
-			main_menu_head_message = func.newEl('span');
+			var br1 = func.newEl('br');
+
+			var main_menu_head_message = func.newEl('span');
 			func.confEl(main_menu_head_message, 'id', 'span_message');
-			main_menu_head_message_txt = document.createTextNode(' your message');
+			var main_menu_head_message_txt = document.createTextNode(' your message');
 			func.insEl(main_menu_head_message_txt, main_menu_head_message);
 
-			br2 = func.newEl('br');
+			var br2 = func.newEl('br');
 
 			func.insEl(main_menu_head_picture, main_menu_head_name, br1, main_menu_head_message, br2, main_menu_head);
 
-			main_menu_head_div = func.newEl("div");
+			var main_menu_head_div = func.newEl("div");
 			func.confEl(main_menu_head_div,'id','menu_preferences');
 			func.confEl(main_menu_head_div,'class','menu_im');
@@ -122,8 +118,8 @@
 			main_menu_head.innerHTML += '<span id="span_menu_pref" style="float: left;" onmousedown="IM.menu_preferences(event ,\'menu_preferences\'); document.oncontextmenu = new Function(\'return false\');"></span>';
 
-			br3 = func.newEl('br');
+			var br3 = func.newEl('br');
 			func.confEl(br3, 'style', 'clear: both');
 
-			div_ie = func.newEl('div');
+			var div_ie = func.newEl('div');
 
 			func.insEl(br3, div_ie, main_menu_head);
@@ -468,4 +464,11 @@
    "showWindowItem" : function(pId)
    {
+      /*
+       * Não tire esta linha
+       * Isso deve estar aqui para a janela 'oculta'
+       * não 'piscar' na tela no momento que é criada.
+       */
+      func.byId(pId + '_im_window_body_inner').style.overflow = 'auto';
+
       if ( (name_document = document.getElementById(pId + '_divEdita')) )
       {
@@ -488,4 +491,5 @@
       dd.elements[pId + "_im_window_resize"].show();
       dd.elements[pId + "_im_window_movable"].show();
+      
    },
 
@@ -523,5 +527,5 @@
 
    "windowMaximizeRestore" : function(objName)
-   {
+   { 
       with(objName)
          objName = substr(0, indexOf('_im'));
@@ -681,5 +685,5 @@
          // Photo Ldap;
          this.get_photo_ldap(pId);
-
+		
          name_document = document.getElementById(pId + '_edita');
          name_document.contentWindow.document.write('<html><body id="' + pId.replace('@', '_at_').replace(/\./g, '_dot_') + '" style="margin:0px;padding:0px"></body></html>');
Index: trunk/instant_messenger/templates/default/messenger.css
===================================================================
--- trunk/instant_messenger/templates/default/messenger.css	(revision 55)
+++ trunk/instant_messenger/templates/default/messenger.css	(revision 60)
@@ -322,5 +322,4 @@
       left:       4px;
       margin:     0px 0px 15px 0px;
-      overflow:   auto;
       position:   absolute;
       top: 23px;
Index: trunk/instant_messenger/templates/default/index.tpl
===================================================================
--- trunk/instant_messenger/templates/default/index.tpl	(revision 20)
+++ trunk/instant_messenger/templates/default/index.tpl	(revision 60)
@@ -5,5 +5,5 @@
       <li><a href="#intro">Introdução</a>
       <li><a href="#supported">Browsers Suportados</a>
-	  <li><a href="#prefe">Menu Preferências</a>
+	  <li><a href="#prefe">Menu Opções</a>
       <li><a href="#contact_list">Lista de Contatos</a>
         <ol>
@@ -14,4 +14,5 @@
       <li><a href="#menu_right">Preferências Avançadas</a>
       <li><a href="#info_ad">Informações Adicionais</a>
+      <li><a href="#info_prefe">Preferências</a>      
 	  <li><a href="#troca_mens">Troca de Mensagens</a>
 	  <li><a href="#troca_status">Troca de Status</a>      
@@ -26,5 +27,5 @@
 	<br>
 	( figura 1 )
-    <img src="templates/default/images/lista_contatos.png" width="256" height="371" alt="Im Screenshot" align="left" style="padding-right:4px;"> 
+    <img src="templates/default/images/lista_contatos.png" width="244" height="369" alt="Im Screenshot" align="left" style="padding-right:4px;"> 
 	
     <br clear="all">
@@ -46,16 +47,16 @@
     </p>
 
-    <h2><a name="prefe">3. Menu Preferências</a></h2>
+    <h2><a name="prefe">3. Menu Opções</a></h2>
 	( figura 2 )
-    <img src="templates/default/images/menu_preferencias.png" width="259" height="188" alt="Menu Preferências" align="left">
+    <img src="templates/default/images/menu_preferencias.png" width="253" height="158" alt="Menu Preferências" align="left">
     <br clear="all">
     <br>
 
-	Para acessar suas "Preferências" ( conforme figura 2 ), basta dar um clique com o mouse e abrirá uma menu com as opções de Adicionar Contato ( <b>veja <a href="#useradd">Adicionando um novo contato</a></b> ), Remover Contato ( <b>veja <a href="#userdel">Removendo um contato</a></b> ) e
-	Informações Adicionais ( <b>veja <a href="#info_ad">Informações Adicionais</a></b> ).
+	Para acessar o menu "Opções" ( conforme figura 2 ), basta dar um clique com o mouse e abrirá uma menu com as opções de Adicionar Contato ( <b>veja <a href="#useradd">Adicionando um novo contato</a></b> ), Remover Contato ( <b>veja <a href="#userdel">Removendo um contato</a></b> ), 
+	Informações Adicionais ( <b>veja <a href="#info_ad">Informações Adicionais</a></b> ) e Preferências ( <b>veja <a href="#info_prefe">Preferências</a></b> ).
     
     <h2><a name="contact_list">4. Lista de Contatos</a></h2>
 	( figura 3 )
-    <img src="templates/default/images/lista_contatos1.png" width="230" height="248" alt="Lista de Contatos" align="left">
+    <img src="templates/default/images/lista_contatos1.png" width="236" height="242" alt="Lista de Contatos" align="left">
     <br clear="all">
     <br>
@@ -64,12 +65,12 @@
     <h3><a name="status">1. Status dos Usuários</a></h3>
     
-    <img src="templates/default/images/online.gif" align="top"> - Contato Online<br>
-    <img src="templates/default/images/offline.gif" align="top"> - Contato Offline<br>
-    <img src="templates/default/images/not_authorized.gif" align="top"> - Contato aguardando autorização ou não autorizado<br>
-    <img src="templates/default/images/chat.gif" align="top"> - Existe uma janela aberta para a troca de mensagens<br>
+    <img src="templates/default/images/available.gif" align="top"> - Contato Online<br>
+    <img src="templates/default/images/away.gif" align="top"> - Contato Ausente<br>
+    <img src="templates/default/images/dnd.gif" align="top"> - Contato Ocupado<br>
+    <img src="templates/default/images/unavailable.gif" align="top"> - Contato Offline<br>    
 
     <h3><a name="useradd">2. Adicionando um novo contato </a></h3>
 	( figura 3.1 )
-    <img src="templates/default/images/adicionar_contato.png" width="510" height="337" alt="Adicionar Contato" align="left">
+    <img src="templates/default/images/adicionar_contato.png" width="536" height="342" alt="Adicionar Contato" align="left">
     <br clear="all">
     <br>
@@ -81,5 +82,5 @@
 	<h3><a name="userdel">3. Removendo um contato </a></h3>
 	( figura 3.2 )
-    <img src="templates/default/images/remover_contato.png" width="410" height="164" alt="Remover Contato" align="left">
+    <img src="templates/default/images/remover_contato.png" width="314" height="157" alt="Remover Contato" align="left">
     <br clear="all">
     <br>
@@ -89,5 +90,5 @@
     <h2><a name="menu_right">5. Preferências Avançadas</a></h2>
 	( figura 3.3 )
-    <img src="templates/default/images/menu_right.png" width="259" height="359" alt="Preferências Avançadas" align="left">
+    <img src="templates/default/images/menu_right.png" width="152" height="130" alt="Preferências Avançadas" align="left">
     <br clear="all">
     <br>
@@ -96,8 +97,9 @@
 
     <ul>
-      <li>Apelido: Renomeia o Apelido(Nickanem) do seu contato
-      <!--<li>Envio Arquivo: Troca de arquivos entre você e seus contatos-->
+      <li>Apelido: Renomeia o Apelido ( Nickname ) do seu contato
+      <li>Envio Arquivo: Troca de arquivos entre você e seus contatos ( Caso esta opção esteja habilitada )
       <li>Grupo: Muda seu contato para um novo grupo
       <li>Remover: Exclui o contato
+      <li>(Re)-requisitar Autorização: Requisitar autorização
       <li>Ver Info: Visualize as informações dos seus contatos
     </ul>
@@ -105,5 +107,5 @@
     <h2><a name="info_ad">6. Informações Adicionais</a></h2>
 	( figura 4 )
-    <img src="templates/default/images/info_adicionais.png" width="410" height="274" alt="Informações Adicionais" align="left">
+    <img src="templates/default/images/info_adicionais.png" width="410" height="267" alt="Informações Adicionais" align="left">
     <br clear="all">
     <br>
@@ -114,5 +116,5 @@
     <h2><a name="troca_mens">7. Troca de Mensagens</a></h2>
 	( figura 5 )
-    <img src="templates/default/images/troca_mensagem.png" width="485" height="270" alt="Troca de Mensagens" align="left">
+    <img src="templates/default/images/troca_mensagem.png" width="332" height="272" alt="Troca de Mensagens" align="left">
     <br clear="all">
     <br>
@@ -123,9 +125,17 @@
     <h2><a name="troca_status">8. Troca de Status</a></h2>
 	( figura 6 )
-    <img src="templates/default/images/troca_status.png" width="391" height="250" alt="Troca de Status" align="left">
+    <img src="templates/default/images/troca_status.png" width="449" height="313" alt="Troca de Status" align="left">
     <br clear="all">
     <br>
 
-	Já está disponível o recurso de mudar o status para "online/offline".
+	Para mudar o seu status basta dar um click em cima do status desejado.
+
+	<br><br>
+
+    <img src="templates/default/images/available.gif" align="top"> - Online <br>
+    <img src="templates/default/images/away.gif" align="top"> - Ausente <br>
+    <img src="templates/default/images/dnd.gif" align="top"> - Ocupado <br>
+    <img src="templates/default/images/unavailable.gif" align="top"> - Offline - Não recebe mensagem <br>    
+    <img src="templates/default/images/img/icon_edit.gif" align="top"> - Mensagem - Personalize sua mensagem <br>        
 
     <hr noshade>
Index: trunk/calendar/inc/class.boicalendar.inc.php
===================================================================
--- trunk/calendar/inc/class.boicalendar.inc.php	(revision 15)
+++ trunk/calendar/inc/class.boicalendar.inc.php	(revision 60)
@@ -2830,34 +2830,4 @@
 		}
 
-		function build_ical($ical)
-		{
-			$var = Array(
-				'timezone',
-				'event',
-				'todo',
-				'journal',
-				'freebusy'
-			);
-
-			$str = 'BEGIN:VCALENDAR'."\r\n";
-			$str .= $this->fold('PRODID'.$this->build_text($ical['prodid'],'prodid'));
-			$str .= $this->fold('VERSION'.$this->build_text($ical['version'],'version'));
-			$str .= $this->fold('METHOD'.$this->build_text($ical['method'],'method'));
-			foreach($var as $vtype)
-			{
-				if($ical[$vtype])
-				{
-					for($i=0;$i<count($ical[$vtype]);$i++)
-					{
-						$str .= 'BEGIN:V'.strtoupper($vtype)."\r\n";
-						$str .= $this->build_card_internals('v'.$vtype,$ical[$vtype][$i]);
-						$str .= 'END:V'.strtoupper($vtype)."\r\n";
-					}
-				}
-			}
-			$str .= 'END:VCALENDAR'."\r\n";
-
-			return $str;
-		}
 
 		function switch_to_phpgw_status($partstat)
Index: trunk/calendar/inc/class.uiicalendar.inc.php
===================================================================
--- trunk/calendar/inc/class.uiicalendar.inc.php	(revision 2)
+++ trunk/calendar/inc/class.uiicalendar.inc.php	(revision 60)
@@ -76,92 +76,4 @@
 		}
 
-		function test()
-		{
-			$print_events = True;
-			
-			unset($GLOBALS['phpgw_info']['flags']['noheader']);
-			unset($GLOBALS['phpgw_info']['flags']['nonavbar']);
-			$GLOBALS['phpgw']->common->phpgw_header();
-
-			echo "Start Time : ".$GLOBALS['phpgw']->common->show_date()."<br>\n";
-			@set_time_limit(0);
-
-			$icsfile=PHPGW_APP_INC.'/events.ics';
-			$fp=fopen($icsfile,'rt');
-			$contents = explode("\n",fread($fp, filesize($icsfile)));
-			fclose($fp);
-
-			$vcalendar = $this->bo->parse($contents);
-
-			if($print_events)
-			{
-				$this->print_test($vcalendar['prodid'],'Product ID');
-				$this->print_test($vcalendar['method'],'Method');
-				$this->print_test($vcalendar['version'],'Version');
-
-				for($i=0;$i<count($vcalendar['event']);$i++)
-				{
-					$event = $vcalendar['event'][$i];
-
-					echo "<br>\nEVENT<br>\n";
-//					echo 'TEST Debug : '._debug_array($event,False)."<br>\n";
-					$this->print_test($event['uid'],'UID','X-');
-					$this->print_test($event['valscale'],'Calscale','X-');
-					$this->print_test($event['description'],'Description','X-');
-					$this->print_test($event['summary'],'Summary','X-');
-					$this->print_test($event['comment'],'Comment','X-');
-					$this->print_test($event['location'],'Location','X-');
-					$this->print_test($event['sequence'],'Sequence','X-');
-					$this->print_test($event['priority'],'Priority','X-');
-					$this->print_test($event['categories'],'Categories','X-');
-					$this->print_test($event['dtstart'],'Date Start','X-');
-					$this->print_test($event['dtstamp'],'Date Stamp','X-');
-					$this->print_test($event['rrule'],'Recurrence','X-');
-
-					echo "Class = ".$this->bo->switch_class($event['class'])."<br>\n";
-
-					$this->print_test($event['organizer'],'Organizer','X-');
-					$this->print_test($event['attendee'],'Attendee','X-');
-					$this->print_test($event['x_type'],'X-Type','X-');
-					$this->print_test($event['alarm'],'Alarm','X-');
-				}
-			}
-
-/*
-			for($i=0;$i<count($vcalendar->todo);$i++)
-			{
-				echo "<br>\nTODO<br>\n";
-				if($vcalendar['todo'][$i]['summary']['value'])
-				{
-					echo "Summary = ".$vcalendar['todo'][$i]['summary']['value']."<br>\n";
-				}
-				if($vcalendar['todo'][$i]['description']['value'])
-				{
-					echo "Description (Value) = ".$vcalendar['todo'][$i]['description']['value']."<br>\n";
-				}
-				if($vcalendar['todo'][$i]['description']['altrep'])
-				{
-					echo "Description (Alt Rep) = ".$vcalendar['todo'][$i]['description']['altrep']."<br>\n";
-				}
-				if($vcalendar['todo'][$i]['location']['value'])
-				{
-					echo "Location = ".$vcalendar['todo'][$i]['location']['value']."<br>\n";
-				}
-				echo "Sequence = ".$vcalendar['todo'][$i]['sequence']."<br>\n";	
-				echo "Date Start : ".$GLOBALS['phpgw']->common->show_date(mktime($vcalendar['todo'][$i]['dtstart']['hour'],$vcalendar['todo'][$i]['dtstart']['min'],$vcalendar['todo'][$i]['dtstart']['sec'],$vcalendar['todo'][$i]['dtstart']['month'],$vcalendar['todo'][$i]['dtstart']['mday'],$vcalendar['todo'][$i]['dtstart']['year']) - $this->datatime->tz_offset)."<br>\n";
-				echo "Class = ".$vcalendar['todo'][$i]['class']['value']."<br>\n";
-			}
-
-*/
-			include(PHPGW_APP_INC.'/../setup/setup.inc.php');
-
-			$this->bo->set_var($vcalendar['prodid'],'value','-//phpGroupWare//phpGroupWare '.$setup_info['calendar']['version'].' MIMEDIR//'.strtoupper($GLOBALS['phpgw_info']['user']['preferences']['common']['lang']));
-			$this->bo->set_var($vcalendar['version'],'value','2.0');
-			$this->bo->set_var($vcalendar['method'],'value',strtoupper('publish'));
-			echo "<br><br><br>\n";
-			echo nl2br($this->bo->build_ical($vcalendar));
-			echo "End Time : ".$GLOBALS['phpgw']->common->show_date()."<br>\n";
-		}
-
 		function import()
 		{
Index: trunk/expressoMail1_2/setup/setup.inc.php
===================================================================
--- trunk/expressoMail1_2/setup/setup.inc.php	(revision 51)
+++ trunk/expressoMail1_2/setup/setup.inc.php	(revision 60)
@@ -12,5 +12,5 @@
 	$setup_info['expressoMail1_2']['name']      	= 'expressoMail1_2';
 	$setup_info['expressoMail1_2']['title']     	= 'ExpressoMail 1.2';
-	$setup_info['expressoMail1_2']['version']   	= '1.210';
+	$setup_info['expressoMail1_2']['version']   	= '1.2101';
 	$setup_info['expressoMail1_2']['app_order'] 	= 2;
 //	$setup_info['expressoMail1_2']['tables'][]    	= 'phpgw_expressoMail1_2';
Index: trunk/expressoMail1_2/index.php
===================================================================
--- trunk/expressoMail1_2/index.php	(revision 57)
+++ trunk/expressoMail1_2/index.php	(revision 60)
@@ -4,5 +4,5 @@
 		'nonavbar' => False,
 		'currentapp' => 'expressoMail1_2',
-		'update_version'	=> '1.210',
+		'update_version'	=> '1.2101',
 		'enable_nextmatchs_class' => True
 	);
Index: trunk/expressoMail1_2/templates/default/index.tpl
===================================================================
--- trunk/expressoMail1_2/templates/default/index.tpl	(revision 58)
+++ trunk/expressoMail1_2/templates/default/index.tpl	(revision 60)
@@ -56,6 +56,6 @@
 							<tbody>
 								<tr id="table_message"></tr>
-							</tbody>					
-						</table>					
+							</tbody>
+						</table>
 					</div>
 				</div>
