Closed (fixed)
Project:
Content Construction Kit (CCK)
Version:
6.x-1.x-dev
Component:
content.module
Priority:
Normal
Category:
Task
Assigned:
Unassigned
Reporter:
Created:
5 Jan 2007 at 17:23 UTC
Updated:
1 Feb 2007 at 16:30 UTC
Jump to comment: Most recent file
Comments
Comment #1
karens commentedVery interesting! I think this approach looks like it has potential. Do you want to try to make a patch??
Comment #2
eaton commentedYes -- I have some of the code working locally already (the screenshot IS actually a screenshot!), I just wanted to run it past some of the gurus to be sure I wasn't overlooking anything important.
I'll try to get things closer to completion in the next couple of days.
Comment #3
yched commentedthe screenshot IS actually a screenshot
Wow. That's even better, then - kudos, that seems really neat.
2 remarks :
- Do you think something could be done about fieldgroups ?
- How this could play with feild weights. I suppose people will want to be able to have different weights depending on the context. I was wondering what this could mean in terms of UI - of course we can always say that it's not supported and they have to manually theme their nodes.
Comment #4
eaton commentedNo idea. I actually wrote the initial code (which generates the list of fields with the appropriate select boxes driven by their formatters) in late November, and have only recently had a chance to revisit it. Part of that involves looking at the field group code and figuring out how it affects things. Anyone who can shed light on how fieldgroups work, shout? ;-)
Not sure. My mockup doesn't touch any of that stuff, but I think a strong case can be made that weight, formatter, and number-of-instances (for multi-value fields) should be configurable for both full and teaser mode.
One of the other reasons I'm working on this patch is to prepare for a major change I'm prepping for Drupal 6 -- replacing the 'teaser/full' binary flag with a textual 'style' parameter to node_view(). 'teaser', 'full', 'print', 'index', 'feed' and so on would all be examples. This method would allow fields to have a different formatter selected for each of those contexts once core supports it.
Comment #5
karens commentedWell, I don't think fieldgroups would be able to handle the idea of having fields that live in different groups in different contexts (i.e. in the 'Admin' group on a full view but in the 'Basic' group in a teaser), at least not without some changes to both its tables and its logic.
Would you ever use groups in a teaser or rss view? The simple answer might be to assume groups only apply to the full view, but maybe I'm missing some use cases.
Comment #6
eaton commentedAn excellent question, Karen. After some thought, I believe that I'm going to ignore the weight, group, and number-of-instances implications mentioned and focus on getting the proof of concept patch out for testing. It would:
1) Provide the 'truncated' formatter for text fields
2) Expose a 'display' tab for each node type
3) Allow admins to select a given formatter (or 'none', or 'default') for each context ('teaser' and 'full' for now).
That's bite-sized enoguh that I think I can pull it off, provide the patch, and see what people think of the functionality.
Comment #7
eaton commentedHah. Never mind, I just realized that text.module already provides a 'trimmed' formatter. Rock.
Comment #8
eaton commentedWell, here it is.
The code is very rough, and the 'Field Label' settings are not yet respected, but it works for all CCK handled fields. It requires a single database update, and also will require modules that implement fields to take in a new parameter when rendering a field -- the name of a formatter, as it can now be passed in by default.
I'm relatively new to the CCK code base, so I'm pretty sure that there are less-than-optimal decisions I made. But I'm very eager to see the patch develop into something worthy of inclusion in the project; I think this capability is definitely useful.
Reviews and corrections/advice eagerly sought.
Comment #9
yched commentedThanks a lot Eaton. I did not test yet, I just looked at the code.
It seems you chose to store the additional display settings in a new db column instead of adding them in widget_settings like you mentioned in your original post. Could you elaborate on that ?
Comment #10
eaton commentedyched, that was due mostly to the fact that widget_settings appeared to have additional validation code wrapped around it that I was uncertain about. It might be better to pull it into widget_settings; I need to look closer, but the separate field felt more 'bulletproof.'
Comment #11
coupet commentedgreat concept and allow for better custom theming! subscribe.
Comment #12
beginner commentedIsn't it what contemplate is already doing?
http://drupal.org/project/contemplate
What is the difference?
Comment #13
eaton commentedNot quite. Contemplate requires you to write code, and it also interacts badly with other modules that add elements to the node body. For example, if you drop in a module that adds a voting widget to every node, you have to manually update all of your contemplate template to include that manually. This system allows users to change how the node body is built 'within the system', without writing any code.
Comment #14
webchicksubscribing.
Comment #15
karens commentedJeff, we just issued a new release of CCK and as a part of it there were a lot of miscellaneous fixes applied. I think the changes are done for now, so can you re-roll your patch?
Comment #16
eaton commentedDefinitely, I'll re-roll it this afternoon or evening so it can be tested. I'm also going to take a closer look and see if it's possible to stick it in widget_settings; my only concern is that it might confuse custom widgets that expect to have more control over what their settings data contains?
Comment #17
karens commentedI don't think putting it in widget settings will create problems for custom widgets if it is controlled by the content module. But another concern I have as I think about this, not having really tested anything yet, is that formatters are set in the field rather than the widget, plus only field settings are available to Views, so it may be that it has to be in field settings rather than widget settings. On the other hand you are setting this for the content type and normally per-content type settings would be set in the widget. So this whole widget setting vs field setting vs separate setting question needs to take into account all these issues about Views and formatters and how you dovetail them all together.
And now that I probably have confused everyone by rambling along as I think out loud, I think I would say leave it the way you have it for now, as a separate field, and let's test and see if it should or could be a widget or field setting instead.
Comment #18
yched commentedEaton : I'm currently testing your patch and working on some modifications (I left display_settings where they currently are :-), and I agree with Karen that we can leave them be for now)
I'll submit these shortly as a new patch so unless you have reworked things, maybe you don't have to bother with a re-roll.
Comment #19
yched commentedHere's a new version of the patch against current 5.0--1.x-dev :
I modified a few things in Jeff's original patch :
- I moved the "Hide Field" pseudo-format out of the dropdown into a separate checkbox for each field / context pair.
It allows IMO for a better visualization of what's enabled or disabled, and allows you to hide a field and later show it again without losing the formatter that was selected.
- I also removed the automatic 'default' option for formatters since I _think_ field modules have to define a 'default' formatter anyway. This might need double-checking.
- I reworked the default theme_field function to take the label display setting into account (when populated | always | never)
- I managed the displayed / non displayed state through the '#access' property in the $node->content array (drupal_render stuff).
I think this was agreed as the preferred way in previous discussions, but it also means the formatter and the theme_field function are called all the same even if nothing is displayed in the end... Opinions ?
More importantly (and arguably), I tried to avoid the need for an API change for field modules (additional param for hook_field in Jeff's patch), since it might delay the functionality to a future CCK 2.0 release OR complicate the life of field module maintainers.
In short, this patch does no longer delegate display to field modules's
hook_field('view')(following one item in dopry's laudry list in a recent "internal" cck mail exchange).Meaning I moved the view operation out of
_content_field_invoke('view')and into a new_content_field_view, that does not call field module hooks (but calls formatters). Most field modules implement the 'view' op the same anyway (and they should).Now maybe there should be a way for a field module to specify he does want handle the display himself. Imagefield for instance does some specific things in his
hook_field('view'). I did not check yet if this is a real problem or not.Wow, this is too long.
Comment #20
eaton commentedThe stuff you described sounds like a good idea. It looks like a file might've been left out of the diff, though, as the _content_field_view() function is never defined in content.module.
Comment #21
eaton commentedAs a side note, it seems like the hard-coded wrapping of field titles in H3 tags is a real drawback. Would it make sense (as long as we're at this) to provide an additional 'inline' titling style, like so:
Title/Label: Field contents
I've yet to find a situation where the default label style doesn't overpower the text... That might make sense as a separate issue, it just seems a shame not to address it while we're here in the middle of the code that sets it all up.
Comment #22
karens commentedI totally agree on the handling of the label. I've never run into any situation where the h3 made any sense, so I always end up themeing it out. I'm surprised no one ever posted that as an issue, but no one did and I've had other fish to fry, so I never followed up on it :-)
Comment #23
yched commentedI did left a part of my code out of the patch - not intended, of course...
I'm away from my code right now, I'll post the complete version tonight.
Comment #24
eaton commentedAttached is the latest version of the patch. It works, thoug I think the label display needs some love. The DIV soup that we create means that it's almost IMPOSSIBLE to do the 'inline' style of field labels without some ugliness.
The basic field formatting, though, is intact and seems to be working really nicely.
Comment #25
dopry commentedHere is my take on this patch...
I liked the one without the checkboxes better. It made for cleaner code.
seems to function for the most part, except once you update everything you have to configure all the formatters. I thought it had completely borked my install for a moment.
Comment #26
karens commentedJust an explanation on the reason for the form_alter (which is a copy of what I used in creating the 'Manage Fields' display). The reason for doing it that way is to pick up form items added by all other modules, like taxonomy. If you only pick up the node_form and the content_form you will miss those. It is messy that way and there may be a better way to do it, but I wanted to pick up all form elements with weights between -10 and +10 so you can see exactly where the fields will drop into the form.
Comment #27
karens commentedAlso, if you guys can post screenshots of your changes we can get feedback on the UI from people who can't or don't have time to try all these patches out.
Comment #28
eaton commentedHere's a screenshot of the new 'display' tab and how it works. The previous patch looks like it had some issues with field labels so I'll be re-rolling, but the rest of it is smooth.
Comment #29
eaton commentedAnd here's the tweaked patch that gets content labels working again.
Comment #30
eaton commentedAnnnnnd one more tweak. Checking to see whether the formatter_matrix is set, THEN looking for the 'enabled' property, avoids the 'all my fields disappear until I visit the display tab' issue.
Comment #31
Caleb G2 commentedHaven't tried the patch out, but the screenshot looks awesome. Am I correct in my current interpretation that this could negate the need for the break command if used with two fields - one of which was set to show only on 'full page' view (e.g. the body) and the other set to show on 'full page' and 'teaser' views (e.g. the teaser)?
Comment #32
eaton commentedThat's correct -- though at the database level it wouldn't automatically populate the 'teaser' column in hte node_revisions table, it would be indistinguishable on a day-to-day basis.
Comment #33
Caleb G2 commentedThis is too cool for words. Really.
It's no big deal that the teaser column doesn't get populated in the node revision table, since that's not permanent stuff there anyway. Teaser column of that table is kind of like a scratch pad that is subject to be rewritten/overwritten at any time. Or in this case not written to at all. (hey, maybe this is an optimization too! Saves on the I/O) ;)
Comment #34
moshe weitzman commentedHow does this jibe with field formatters in a table View? Seems like some duplicate functinality there ... I have only looked at the screenshot so far.
Comment #35
eaton commentedIn a table view, the available formatters appear as options in the View's Field section. This functionality was actually inspired by how the Views integration is handled.
Comment #36
eaton commentedEr. Which is to say, this just exposes the same underlying formatting functionality during the node_view() process that has already been exposed via the Views integration. In Views, the UI has a sensible place to specify what formatter should be used. This is mostly about providing a similar place to choose your field formatters in the standard node_view() scenerios.
Comment #37
yched commentedWow, you raised a lot of enthusiasm here, Eaton :-)
A few remarks on the last patch in #30 :
- I don't know what dopry precisely meant when he wrote in #25 :
I liked the one without the checkboxes better. It made for cleaner code..
Obviously (i proposed that) I do like the checkboxes for the 'context' (full, teaser, page) columns,
but I do prefer the 'no checkbox' version of label columns (simple dropdown).
With checkboxes all over the place, you don't distinguish label columns from 'context' columns.
Plus we lose the "when populated" behaviour, that is now CCK's current (and most wanted IMO) behaviour.
What about two dropdowns for the labels :
When populated (default) / Never / Always
Label (default) / Inline
- I like the Inline label styling but it does not seem right with multiple fields (label gets repeated). :
label : value_1
label : value_2
label : value_3
Something like
label : value_1
..........value_2
..........value_3
(not actual dots obviously, but my indents get truncated no matter what)
would be better IMO, but this would probably require providing some CSS.
- I'm not fond of the formatter_matrix name, especially since it also contains label display settings. I'm not sure I get the issue with the initial 'display_settings' name - OK, that's a detail.
I'll try to submit a new patch shortly - opinions welcome meanwhile ?
Comment #38
eaton commentedyched:
I'm neutral on the issue of checkboxes or dropdowns for the labels; I think that there's no good reason *not* to aim for consistency though, and the argument for checkboxes on the fields can easily be extended to labels. But I wouldn't be choked up if it went back to the way it was. It's also important to note that the current behavior when labels are turned on *is* the same as the current 'When Populated' mode. The 'Always' mode is of somewhat dubious value, IMO. Adding two full select boxes for the labels strikes me as overkill...
You're right; the inline styling does need work. The only problem lies in the fact that the individual fields are output as divs, thus there IS no way to make a label inline without putting it inside the field's div. It's a thorny issue, and honestly I think the inline option only really makes sense for single-value fields.
In either case, though, I think 'strong' looks better than an H3...
There are three remaining questions in my mind: should 'page' be listed as an explicit style separate from 'full?' is there any way we can get 'rss' in that list without massive hacking? and finally, should we put some basic help text above the table?
Comment #39
yched commentedthe current behavior when labels are turned on *is* the same as the current 'When Populated' mode
I missed that - In this case, I agree that having two select boxes is not needed.
A checkbox for 'label / no label' is the right UI choice obviously, but I do find it makes the structure of the table much less readable. If we could find a way to visually highlight that the label column is another animal than the last three ? (still searching)
About "page" : mixed feelings here as well - I left it in for now. One thing is sure : we are bound to get support requests about this if we don't provide a proper explanation.
About "inline" : it also not suited for "block" fields ('filtered' text fields, image fields). Plus I think for those fields where you have to fall back to "header", the visual difference between both label styles makes some ugly output.
I think we can give this and "rss" issue a closer look after this gets committed ?
Attached is an updated patch - same UI as in #28, with a little code cleanup.
The main thing that prevents this from being ready IMO is the case of imagefield (and possibly others ?), that will be affected by our bypassing of hook_field($op = 'view') - see the end of my comment #19
Comment #40
eaton commentedAgreed. It wouldn't take much work to remove it, actually; just pull it out of the list of modes and change the line that determines the current context.
Agreed. having it as an option is great, making it 'smarter' is a next step.
I just took a look at its code -- Imagecache is essentially doing what this patch does, on a widget-specific basis. The end result will be the same when people use the display tab to choose which formatter should be used in teaser and full modes.
Comment #41
dopry commented@KarenS, re: form_alter
So you want all fields added by all modules not just CCK to be managed by FieldGroups? I guess its necessary for FieldGroups.
@yched, re: display_settings
It's too close to widget_settings where the developed creates a form that is settings specifically for the widget. I guess display_settings is ok. I just thought it was a little confusing. Since it didn't actually tie into any of the CCK callbacks.
re: checkboxes
if we didn't have them we make the form handling logic a little more straight forward, and easier to for people to override. I do like the UI though...
+1 for strong vs h3
+1 to adding rss context, but that would require changing the finger of theme_field I think. I'd really like to see this simplified enough to get it in as a feature addition in the cck 1.x series. I think changing those functions fingerprints will force us into 2.x territory, since modules will have to be updated instead of having an unused hook_field op=view.
So there is the question of which branch of CCK people feel this should be included in.
Comment #42
eaton commentedAgreed, that's a 2.0 feature IMO. I'd love to see this go into CCK 1 pretty much as it stands right now.
Comment #43
RobRoy commentedLooking at the UI screenshot, I think it would be simpler to remove a checkbox and have "Hidden" in the dropdown list. For D5 a similar task was done to the blocks admin page and I like it a lot better (we removed enabled/disabled checkbox and added a to the region list). But looks kick ass so far!
Comment #44
karens commented@dopry, hook_form_alter wasn't so that fieldgroups would manage the fields, it was so all the important elements would show up (dimmed out) on the page so people can see whether the weights they give their fields are going to place the fields where they expect to find them. This is related to all the support questions we started getting when we fixed weights (like 'how come my title is now in the middle of the page'). The idea was to make the layout emulate the way the page will lay out.
I haven't had a chance to try this patch out, but hope to get to it soon. For the label css, I think we should wrap both labels and values in divs, then put some appropriate style in content.css as a starting point. It's hard to overcome elements like h3 and strong if you don't want that behavior. For multiple elements, we can give the first label a different class than the subsequent ones, then you can style them differently (maybe even just 'display:none' on the subsequent ones). Divs are the most flexible elements we have to work with, so I would stick with them.
Comment #45
yched commentedUpdated patch :
- implements Karen's suggestion about replacing 'h3's and 'strong's with 'div's for labels display.
- fixed a typo in my previous patch (widget_settings was no longer retrieved)
- renamed formatter_matrix back to display_settings. I really find formatter_mattrix too misleading. Suggestions welcome for a better name.
Comment #46
yched commentedAttached screenshot shows labels styling implemented in the patch above.
First field 'texte' is multiple with 'inline' label.
Second field 'nombre' is single with 'header' label
Comment #47
eaton commentedyched, the difference in appearance is remarkable -- I'd actually use that presentation without theme overrides for a lot of my nodes. wow!
I think that the UI/presentation issues we've discussed with checkboxes vs select lists can probably be revisited later if we really need to. Are there any other changes that are needed, or holes that have been missed?
Comment #48
yched commentedWell, I guess the fields could be ordered by weight, but that would probably require handling fields nested in fieldgroups and I'm afraid this is a little beyond me right now.
Other than that, this looks ready to me.
I'd rather wait for Karen to review this, and dopry to say his word about imagefield, though.
Comment #49
yched commentedOh, and maybe wait for someone with a more fluent english than I have to propose some word of explanation ?
Comment #50
eaton commentedAttached is a re-rolled version with inline help/explanation text. After a bit of thought, I also hid the 'page' column. Right now in Drupal there's not really a compelling reason to separate 'page' mode and 'full' mode in this screen, and for the time being it only increases the chance of support questions. In the future, it's easy enough to add new modes as core supports them. ('print', etc).
Comment #51
eaton commentedAnd, a screenshot.
Might be worth adding some CSS to the table, though, as I noticed that the checkboxes and select boxes can wrap onto separate lines if the page is resized. But functionality wise, the patch is on course I think.
Comment #52
webchickJust looking at the screenshot, haven't tested the patch, but...
The UI would be improved imo by using RobRoy's suggestion in #43 and including "" as one of the options.
Consider the fact that you have to click three times in order to turn on a box that is using a non-default option: once to check the box, once to select the drop-down and another time to select the "whatever" in the drop-down. Now repeat that for your typical CCK type that might have at last 6-8 fields. Now repeat that for each CCK type. etc. Further, drop-downs are bigger and easier to "hit" with the mouse than checkboxes, making data entry easier.
Comment #53
webchickBah. That should be "including '<hidden>'..." -- I should really learn to preview someday. ;)
Comment #54
eaton commentedI lean towards webchick's thoughts as well. In case others agree, I've rolled a patch that simplifies things to *just* the select box. As a consequence, it also works a lot better when the window is resized and squished tightly.
Comment #55
karens commentedWell I was working with a couple of the earlier patches and you kept changing things here faster than I could get my installation updated :-)
+1 to getting rid of the checkboxes. They clutter the screen more, as webchick noted they add more clicks, and they take up room we may want in the future for other options.
+1 to removing the 'Page' option. I still don't understand when that would have come into play anyway, can someone enlighten me??
+1 to adding RSS in now that there is more room.
I think we could futher simplify this now to eliminate the other fields on the screen (the whole $dummy_form bit) since we already have a screen that shows weight and I'm not sure we need it again here, although we'll have to re-visit that whole idea if we come back and try to allow for different weights in different contexts (which would definitely be a 2.0 feature).
I'm not sure about the label option. It's not really the same thing as the others, which makes it confusing. Also I would change the wording from 'header' and 'inline' which are kind of technical terms to 'above' and 'beside'. There's no better place to put it though, I guess.
As to the issue of how this affects other modules, I would like to retain some way for a field module to provide its own handling of the display anyway, so one option is to first go ahead and see if anything is returned with the $op = 'view' when creating the display and if it does, let the module handle it, otherwise handle it here. That will keep other contrib modules from breaking until they get updated and make a way for them to do custom handling if they need it. Plus of course we need to extend the patch to alter the core contrib modules to remove their handling of the view.
The other thing I was going to do was take a good look at Dopry's patch to see if there are other things we should incorporate from that, but I haven't gotten that far yet...
Comment #56
karens commentedI was thinking more about this and I think we should go with something like the current patch, with whatever changes we agree on, for 1.0, then for 2.0 I would change the 'display' tab to have a series of subtabs for 'Teaser', 'Full', 'RSS', 'Print', etc. Each of those subtabs would have a display like the 'Manage Fields' screen that provides a way to change weights and groups just that option, and on those screens I would go back to pulling in all the other fields in the form for context.
Also, we never got back to the question of whether this should be a separate setting or part of field or widget settings. Since it looks like we may end up with many other options in the future, maybe it makes sense to keep it a separate field?
Comment #57
yched commentedSome comments on the last posts :
- I think dopry's version of the patch is already "in there". The patch evolved in an iterative way, each new one building on / modifying the previous one without forking.
- about label setting names : would 'above' and 'inline' be OK ? 'inline' is also common language.
- about how to get this in 1.0 and handling of field module's current
hook_field('view'):I don't think we can call it anyway and see if it returns something, for it currently always will. And we can't require field modules to remove their 'view' op right now, because then they would break with <= 1.2 cck release. And I think we want to avoid things like "date.module 1.5 requires cck 1.3".
What we could do I guess is, as Karen also suggested, to provide field modules a way to explicitly say "I want to handle the display myself" (in hook_field_info ?), and only then defer to it.
- it seems there's a consensus about removing checkboxes, but I'd like to advocate one last time. If consensus stays, I'll forever hold my peace :-)
- They provide a better visualization of what's enabled and what is not.
- 'enabled / disabled' and 'output format' are basically two different settings. With only a dropdown, when you disable a field and later change your mind an re-enable it, you have lost the output format you previously set and have to figure it again.
- They are checked by default so I don't agree with webchick's 'count of clicks' in #52 :
Most of the time IMO you'll only want to change 'enable' status OR 'display format', and not both.
This being said, I'm aware that 'admin/blocks' moved away from checkboxes, but I'm not sure this was a good choice, for the same reasons.
Comment #58
yched commentedNew version of the patch :
- simplifies 'dummy_form' code stuff, since we only retrieve actual cck fields
- renamed 'header' into 'above' for label display options
- cleared _content_field_invoke and _content_field_invoke_default of the specific '$op == 'view' bits - 'view' does not call them anymore.
- moved around code in content_admin a bit gather with the "width" overview. I also renamed fonctions to include the notion of 'overview' - so if you tested a previous version, you'll need to empty your cache.
- added a way for contrib field modules to specify they want their 'view' op to handle the display instead of the default behaviour.
hook_field_settings accepts a new op, 'callbacks', which should return an array whose keys are op names, and whose values are booleans (TRUE if you want your callback called instead of the default - only op 'view' uses it for now).
(i took imagefield because it's the only module I'm aware of that would require it - dunno why I focused on imagefield in my previous posts, its 'view' op is standard)
I do not find this ideal, but it's the best I could come up with in order to have the 'display settings' functionality work without requiring contrib modules to be updated (and then breaking with <= 1.2 cck) and without messing with CCK 1.x API.
We should be able to make it cleaner in 2.0.
Comment #59
yched commentedBTW : If anyone wants to tackle 'RSS view', new patch is welcome, i'm not too familiar with that area.
I do think it can be added later on after this gets in, though.
Comment #60
eaton commentedi spent a *little* bit of time looking at this, and I don't think there's any really clean way to override it without increasing the complexity of the patch a lot. Contemplate.module already offers an option for overriding RSS generation, so there is a fallback option in that scenerio. I think handling the teaser and full modes, as well as label styles, would be a huge boos for the 1.x family.
yched, thanks loads for rolling this latest version. I've been away for the last several days and couldn't get to this but I'm very excited about its progress.
Comment #61
karens commentedyched, thanks!! I like this a lot. Just a couple points:
1) We need some sort of message when you save the values to indicate they got saved. It looked at first like it wasn't working because there was no message.
2) We lost the 'hidden' option for each field to leave it out completely.
I haven't yet tested the handling if a field wants to do its own display, so I'll check that next.
Comment #62
karens commentedHere's a patch with my (minor) changes to yched's patch.
1) Added confirmation message when you change the display values.
2) Added in a 'hidden' option for each field
3) Changed the 'Display' tab to say 'Display fields' for consistency with 'Manage fields' and moved the tabs so it is just to the right of the 'Manage fields' tab. I tried just using 'Manage' and 'Display' instead, but when you're on the 'Edit' tab those labels are confusing, so I think they need to include the word 'fields'.
Also, I like the method for allowing modules to indicate they want to handle their own display. That is nicely extensible and I will use it when I make the patch for setting default values to create a method for modules to take over the handling of default values, too.
I think this is RTBC, but would probably be good for someone to test my altered patch just to be sure.
Comment #63
yched commented- RSS : let's do that later :-)
- missing message on form submission : quite right
- lost 'hidden' option : Er, yes, I forgot that while merging Jeff's last patch and my work.
Attached patch corrects the last two points.
Comment #64
yched commentedArg, crossposted :-)
Karen, I'll look at your patch, please forget my patch in #63
Comment #65
yched commentedI modified two minor things in Karen's last patch :
- changed the weight of the "add group" tab so that it comes last
we now have "edit | manage fields | display fields | add field | add group"
- moved the help text for the display overview form into hook_help where it belongs best.
... and I committed the thing :-) Yay.
Well, back to regular bug queue fix, I guess :-)
Comment #66
karens commentedI've got it working in 4.7 now, I'll commit a 4.7 fix.
Comment #67
yched commentedGreat ! I was thinking that this ought to be backported, but felt a little lazy about it...
Comment #68
karens commentedOK, 4.7 is now updated, too.
Thanks yched and Eaton, this is a really useful feature!
Comment #69
dopry commentedFYI: This is really cool... Yched, don't worry about being to considerate of imagefield. I'm trying to standardize it as much as posssible. I wan't it to work as cleanly with content.module as possible in the long run.
Comment #70
Caleb G2 commentedI could be jumping the gun here, but the cvs packing script has been kind of borked the past couple weeks - there are no new tarballs for 5.x or 4.x as of right now even though I can see the commit messages. Maybe that is because they were committed as dev snapshots - I think those still only get made a couple times a day. If however they were committed as an 'official' release then something is definitely wrong and the packing script skipped over this (those get package every 5 minutes now). Just thought someone would like to know. If I'm just jumping the gun, I apologize in advance.
Comment #71
eaton commentedCaleb, it might be jumping the gun -- the way the new Release system works, changes in the DRUPAL-5 branch go into the dev snapshots until they're explicitly tagged as a DRUPAL-5--1-x release. The changes from the last couple of days just haven't made it into an official versioned release yet, hopefully so we can iron out any bugs before people start using it in production. ;-)
Comment #72
Caleb G2 commented13+ hours and no tarballs...
Comment #73
yched commentedI always thought tarballs were generated once per day ?
Comment #74
Caleb G2 commentedActually, what has happened is that the 5 developer release tarball does not reflect the new date that it was created on - but the new files are in there.
If you go to the releases page http://drupal.org/node/48429/release you can see that the cck 5.x-1.1 tarball has a date of 1/8/07 instead of 1/17/07 like it should.
This is in keeping with this bug, which I've seen before but thought might have been fixed by now. I've mentioned it to dww. I'm not sure if it would help if others did or not.
Comment #75
coupet commentedHead and dev releases DO reflect the accurate updated dates.
Comment #76
eaton commentedThat's because the new changes aren't in version 1.1 of CCK. CCK 1.1 was released on 1/8/07, and shouldn't *change*. The current code is in the HEAD and dev snapshots. When the next version of CCK (1.2? 1.3?) is released, it will include the new files. And when more features are added after that, they won't change what is in 1.2.
Comment #77
Caleb G2 commentedPardon me - a horrible typo on my part - it is the cck-5.x-1.x-dev.tar.gz and cck head which does not have the true dates on them. They indicate that they were last updated 1/13/07, when really it was 1/17/07.
Comment #78
(not verified) commented