[drupal-devel] [feature] make profiles more themable: do not pass
along huge chunks of HTML
moshe weitzman
drupal-devel at drupal.org
Wed Sep 14 14:20:49 UTC 2005
Issue status update for
http://drupal.org/node/31123
Post a follow up:
http://drupal.org/project/comments/add/31123
Project: Drupal
Version: cvs
Component: user system
Category: feature requests
Priority: normal
Assigned to: Anonymous
Reported by: Bèr Kessels
Updated by: moshe weitzman
Status: patch (code needs review)
Great job, Ber. This is what we have needed for a while.
- it would be nice if we tagged with css each profile field, and not
each category as we do now. requires change to theme_user_profile().
also requires that they keys in the returned array are valid css class
names. one could argue that this is a documentation issue, and not a
code issue. doesn't have to be part of this patch.
- theme_user_profile() has one of the few remaining instances of
theme('box'). perhaps kill it now. if any core themes are overriding
this function, they should change also.
- the PHPDoc for theme_user_profile() needs updating for named keys
moshe weitzman
Previous comments:
------------------------------------------------------------------------
Tue, 13 Sep 2005 18:35:50 +0000 : Bèr Kessels
Attachment: http://drupal.org/files/issues/user_profile_themable_mutliarray.patch (1.46 KB)
I want more power of the theming the user profiles. The recent patch for
profiles imporves ti a little it, but leaves one mayor issue open;
All fields in a "category' are passed along as one huge chunk. That is
a pity, IMO, for you cannot really theme it anymore, exept re-use tha
chunk of HTML. Or, if you really wish, you could pregreplace teh HTML.
This minor patch leaves the default result exactly as it is, yet it
allows themes to do some advanced stuff, without having to do database
queries in the theme.
An example is http://newsphoto.nl/user/2 where I curerntly need about
40 lines of code and two database calls, while with this simple patch,
it will be theme function of only five lines!
And then it allows me to use a .tpl.php file to use reach field as a
variable.
------------------------------------------------------------------------
Tue, 13 Sep 2005 19:40:19 +0000 : Dublin Drupaller
I agree with the objective of making profiles more themable and in an
easier way. I am working with kiev1.org on a patch for flexinode that
unleashes themeability control, which is not reliant on any theme
engine..the work in progress patch is called FlexiMAX and a this
screenshot illustrates the simplicity of how it works [1] in a
flexinode context.
Without digressing from your patch, I was thinking about applying the
flexiMAX idea to the profile.module as well. i.e. a flexiMAX type
layout field is displayed with Profile_fields populated and converted
into simple to use tags to insert into a bespoke layout.
I like the simplicity of control and it's non-dependence on the
phptemplate.engine and tpl.php overrides..putting the power back into
the .CSS file and with non-php programmers or designers without much
php savvy. The phptemplate engine is superb. It's just a struggle
sometimes to delve into relatively heavy coding for a simple design
tweak.
Just my 2eurocents.
Dub
[1] http://drupal.org/node/30376\" title=\"click for the ongoing
discussion about the fleximax.module patch
------------------------------------------------------------------------
Tue, 13 Sep 2005 19:42:23 +0000 : Dublin Drupaller
sorry..I goofed on that link..
the work in progress patch is called FlexiMAX [2] which allows simple
layout control at the $content level and this screenshot illustrates
how it works [3] in a flexinode context.
[2] http://drupal.org/node/30376\" title=\"click for the ongoing
discussion about the fleximax.module patch
[3]
http://cvs.drupal.org/viewcvs/drupal/contributions/sandbox/dublindrupaller/modules/fleximax/fleximax-screenshot.PNG?view=markup\"
title=\"a screenshot of the flexiMAX.module layout control panel
------------------------------------------------------------------------
Tue, 13 Sep 2005 20:23:41 +0000 : Bèr Kessels
Dub.
There is still that plan to move profile data into nodes. which IMO is
the route to take.
But untill that day, this few-liner is a great improment :) (IMNSO)
------------------------------------------------------------------------
Wed, 14 Sep 2005 13:28:20 +0000 : Bèr Kessels
Improved. I moved the array higher up. the hook user now must return a
multidimensional array, each field as array item:
array('name of category' => array ('field1', 'field2'))
anohther issue and patch should deal with a default theme function for
each profile field.
------------------------------------------------------------------------
Wed, 14 Sep 2005 13:28:57 +0000 : Bèr Kessels
Attachment: http://drupal.org/files/issues/regions_replace_not_append.patch (4.34 KB)
------------------------------------------------------------------------
Wed, 14 Sep 2005 13:30:53 +0000 : Bèr Kessels
Attachment: http://drupal.org/files/issues/user_profile_themable.patch (3.54 KB)
ahum. that was the wrong file. this one is correct
------------------------------------------------------------------------
Wed, 14 Sep 2005 13:52:23 +0000 : Bèr Kessels
Attachment: http://drupal.org/files/issues/user_profile_themable_0.patch (3.58 KB)
while working on this. I thought It is even better to return keyed
arrays
<?php
$fields[$field->category][$field->name];
?>
More information about the drupal-devel
mailing list