diff -ru com_users/controller.php com_users_modified/controller.php
--- com_users/controller.php	2009-06-30 20:55:34.000000000 +0200
+++ com_users_modified/controller.php	2009-05-12 15:11:10.000000000 +0200
@@ -170,6 +170,23 @@
 			return $this->execute('edit');
 		}
 
+    $jspath = JPATH_ROOT.DS.'components'.DS.'com_community'; // BEGIN Patrick Puecher
+    include_once($jspath.DS.'libraries'.DS.'core.php');
+    
+		$model 		=& CFactory::getModel('profile');
+
+		$fields		= $_POST;
+		$values		= array();
+		
+		foreach($fields as $id => $value){
+		  if(strpos($id, 'field') !== false){
+  			$val	= JRequest::getVar($id,'', 'POST');
+  			$id		= JString::str_ireplace('field','',$id);
+  			$values[$id]	= $val;
+  		}
+		}
+		$model->saveProfile($user->get('id'), $values); // Patrick Puecher END
+
 		/*
 	 	 * Time for the email magic so get ready to sprinkle the magic dust...
 	 	 */
diff -ru com_users/views/user/tmpl/form.php com_users_modified/views/user/tmpl/form.php
--- com_users/views/user/tmpl/form.php	2009-06-30 20:55:34.000000000 +0200
+++ com_users_modified/views/user/tmpl/form.php	2009-07-14 11:27:21.000000000 +0200
@@ -287,6 +287,42 @@
 			</table>
 			<?php } ?>
 		</fieldset>
+		<?php // BEGIN Patrick Puecher ?>
+		<fieldset class="adminform">
+		<legend><?php echo JText::_( 'Jomsocial Information' ); ?></legend>
+			<table class="admintable">
+      <?php
+      
+      if ( is_array ( $this->fields ) )
+      {
+        foreach ( $this->fields as $name => $fieldGroup )
+        {
+        	/*if ($name != 'ungrouped')
+        	{
+            echo '<h2 class="expand" style="border-bottom: solid 1px #ccc;">' . $name . '</h2>';
+        	}*/
+        	
+    			foreach ( $fieldGroup as $f )
+    			{
+    				$f = JArrayHelper::toObject ( $f );
+    		    ?>
+    			<tr>
+    				<td width="120" id="lblfield<?php echo $f->id;?>" class="key">
+    					<?php if($f->required == 1) echo '*'; ?><?php echo $f->name;?>
+    				</td>
+    				<td>
+    					<?php echo CProfileLibrary::getFieldHTML( $f , '' ); ?>
+    				</td>
+    			</tr>
+    	 		<?php
+    			}
+        }
+      }
+      
+      ?>
+      </table>
+		</fieldset>
+		<?php // Patrick Puecher END ?>
 	</div>
 	<div class="clr"></div>
 
diff -ru com_users/views/user/view.html.php com_users_modified/views/user/view.html.php
--- com_users/views/user/view.html.php	2009-06-30 20:55:34.000000000 +0200
+++ com_users_modified/views/user/view.html.php	2009-05-12 14:32:04.000000000 +0200
@@ -75,7 +75,20 @@
 		$myObjectID 	= $acl->get_object_id( 'users', $myuser->get('id'), 'ARO' );
 		$myGroups 		= $acl->get_object_groups( $myObjectID, 'ARO' );
 		$myGroupName 	= strtolower( $acl->get_group_name( $myGroups[0], 'ARO' ) );;
-
+		
+		if ( $edit ) // BEGIN Patrick Puecher
+		{
+      $jspath = JPATH_ROOT.DS.'components'.DS.'com_community';
+      include_once($jspath.DS.'libraries'.DS.'core.php');
+      
+  		$model 		=& CFactory::getModel('profile');
+  		$profile = $model->getEditableProfile( $user->get('id') );
+  		$profileField	=& $profile['fields'];
+  		
+  		CFactory::load('libraries', 'profile');
+      $this->assignRef( 'fields' , $profile['fields'] );
+    } // Patrick Puecher END
+    
 		// ensure user can't add/edit group higher than themselves
 		/* NOTE : This check doesn't work commented out for the time being
 		if ( is_array( $myGroups ) && count( $myGroups ) > 0 )

