I've been pouring over the forums for a solution to this but so far no luck. I'm using the Profile module (from "Core - optional") to add a number of items (in different categories) to a user's profile. When the user edits his/her profile, I'd like everything to be on one single page, much like it is during registration, instead of the multiple tabs. I'm guessing that I'll need a custom module, which is fine, but can someone explain how I would go about doing this?

Comments

TheFourthDoctor’s picture

bump?

Microbe’s picture

I'm looking to do the same, have you had any luck so far?

cjgammon’s picture

i haven't been able to find anything on this and it would be very helpful.

MsNingrum’s picture

Well, I'm currently working on it, I have installed http://drupal.org/project/tabs on my drupal site, and I added code below in user-profile.tpl :

<?php

$mail = $account-> mail;
$AccInfo= user_edit($account, $category = 'account');
$pic= theme('user_picture', $account) ;
$Ainfo = array();
  $Ainfo['AccInfo'] = array(
    '#type' => 'tabset',
  );
  $Ainfo['AccInfo']['Account Info'] = array(
    '#type' => 'tabpage',
    '#title' => t('Account Information'),
    '#content' => '<div class=profile>' .$pic .'<p>' .'Email Adress :' .$mail .'</p>' .'</div>',
  );
  $Ainfo['AccInfo']['editAcc'] = array(
    '#type' => 'tabpage',
    '#title' => t('Edit Account'),
    '#content' => $AccInfo,
  );
print tabs_render($Ainfo);
?>
<?php
	
$fname = ('First Name :') .$account->profile_fname .'<br>';
$lname = ('Last Name :') .$account->profile_lname .'<br>';
$city = ('City :') .$account->profile_citi . '<br>';
$country = ('Country :') .$account->profile_country .'<br>';
  $PIform =  user_edit($account, $category='Personal Information');
  $PI = array();
  $PI['Personal_Information'] = array(
    '#type' => 'tabset',
  );
  $PI['Personal_Information']['Personal Information'] = array(
    '#type' => 'tabpage',
    '#title' => t('Personal Information'),
    '#content' => $fname .$lname .$city .$country,
  );

  $PI['Personal_Information']['editPI'] = array(
    '#type' => 'tabpage',
    '#title' => t('Edit Information'),
    '#content' => $PIform,
  );
  print tabs_render($PI);
  ?>

but anytime I try to edit the category of 'Personal Information' it makes some fields in 'Account' category disappear. I hope somebody could help me find where the mistake is..

arnaldex’s picture

I used the "One page profile" module, it says it's for D6 but I changed the .info file and works for D5 ;)

xurizaemon’s picture

freestylegary@yahoo.com’s picture

Could you please let me know what changes were made by you to get it to work?

arnaldex’s picture

This is the .info file I'm using:

name = One page profile
description = A module for condensing user profiles into a single edit page
dependencies = profile
; Information added by drupal.org packaging script on 2009-06-14
version = "6.x-1.2"
core = "6.x"
project = "onepageprofile"
datestamp = "1244980545"

...I've only stripped de "[]" in version line and core (I think).

One thing more, it doesn't work with "newsletter" module, you have to save the newsletters vars yourself.

adnanhader’s picture

I am looking for the same functionality in Drupal 7. I am using Profile 2 module to create different kind of profiles for different roles. Now I want to make a single edit page for account and profile. how to do that?