Closed (fixed)
Project:
Facebook-style Statuses (Microblog)
Version:
6.x-1.x-dev
Component:
User interface
Priority:
Normal
Category:
Feature request
Assigned:
Reporter:
Created:
30 Oct 2008 at 01:17 UTC
Updated:
25 Nov 2008 at 23:12 UTC
Hi, I requested this feature on the AF integration thread.
"And appearing to the poster him/herself is the clickable status, which displays the status form onclick regardless if status is set or not set."
This would be a superb usability enhancing feature the module should have. I'm requesting this feature in its own and more appropriate thread. Thanks for your excellent module.
Comments
Comment #1
icecreamyou commentedIMHO, this would take away from the module's usability. IIRC you were using normal-sized text for your author pane, which is not how the module is set up: the authorpane text is enclosed in <span class='submitted'></span> to make the text smaller and fit better. If there was any attempt to add a textfield there, it would look and feel very messy, especially for users with JavaScript disabled.
You'll notice that there are no sites that implement this type of thing. Most sites only allow it on user profiles.
In the next -dev release of the module I'll probably add a feature to either (A) allow calling facebook_status_form_display with a UID, (B) give the main Facebook Status block an option to always show the current user's status [with updates allowed], (C) add a block that always shows the current user's status [with updates allowed], or (D)
$A && ($B || $C). Hopefully that will help you.Comment #2
icecreamyou commentedChanging status so I remember to look at this later.
Comment #3
Flying Drupalist commentedHi, IceCreamYou, I don't understand what you were saying about the normal sized text and usability. I don't think spacing is an issue, on my authorpane it would work superbly (which doesn't work the same as the AF authorpane, I'm just borrowing Michelle's terminology). But regardless isn't that something for the themer to take care of? If you document a way to return the javascript status form the themer can put it anywhere, even if not the authorpane. As far as the javascript goes... are you using jquery hide? If you do that then hiding would be dependent on js, but if you use display:none; then hiding would work without it. But what would be even better is if the textfield isn't hidden, but called via ajax onclick, but I won't be greedy. :)
I think if you give me (A), I can probably theme the funtionality myself, but it's a lot clumsier (and worse on the server) than it being part of the status display itself, so I'm not too excited about that. I'm also a little confused on B and C, Facebook Status block already displays current user status and allows updates, so I'm not sure what you're proposing. But of course adding new features is always good, even if I don't understand them. :) But what I'm really after is what I outlined in the paragraph above. I unfortunately don't have any space to put a block.
As far as usability goes, I think this is rather important. For facebook, most of the time is spent on the profile page, so changing statuses is never an issue. However, for my user most of the time will be spent on content pages, looking at nodes, so that's where my status changing should be. But thanks for giving me an idea, now I'll probably replace the welcome message with the facebook status.
Comment #4
icecreamyou commentedI'm confused. Obviously I can't put anything in the author pane if it's not part of Drupal or a module.
There's already a function to display the status form: facebook_status_form_display. Right now it takes no arguments, but in the next release it will take a UID as an argument. I can't remember if it themes it or not, but if it doesn't I'll add a function to do so.
The showing/hiding is done via JQuery, and I have no idea how a CSS class would be toggled to display:none without JavaScript anyway.
I wasn't talking about Facebook, I was talking about content-oriented sites. Forums and such. They usually only allow you to change your status message in your settings/on your profile.
Comment #5
Flying Drupalist commentedHi, I'm just asking for something to stuff into my authorpane, not for you to uh, I don't really understand what you mean in your first sentence. :D
Thanks, if you can make the facebook_status_form_display work I'll take that. :D
For CSS hidding you add display:none to the status in the stylesheet. That way it'll be hidden onload, with or without javascript.
Then in jquery you do something like this: $(this).is(':hidden') ? to check if it's hidden. Jquery is very smart, .toggle or .show will work even if the hiding is done with css rather than jquery itself. If you use jquery hiding, it won't work without javascript, and even with javascript it will appear for a moment between the loading of the html and the javascript. It's a very ugly flashing. I was taught that onload hiding should always be done in css rather than in jquery.
"I wasn't talking about Facebook, I was talking about content-oriented sites. Forums and such. They usually only allow you to change your status message in your settings/on your profile."
Hence why they have bad usability. :P
But really, I'll be very happy with facebook_status_form_display. Thanks.
Comment #6
icecreamyou commentedIf I hide by default using CSS and toggle with JQuery, users with JavaScript disabled will see nothing at all, which is worse than the loading effect.
Anyway, Drupal loads JS in the header by default, so you shouldn't experience the problem unless you've changed that. (I do recommend changing it for performance reasons, but that's another story...)
Comment #7
Flying Drupalist commentedAhh I understand you. Then I will just do it in the theme rather than request it as part of the function. That way you won't disturb other things that use the function, such as blocks. But anyway, thanks. :)
Comment #8
icecreamyou commentedI've only tested this in the 5.x branch but it should work in 6.x as well.
Comment #9
Flying Drupalist commentedHi, I misunderstood what you were going to do. How do you display just the form, and not the results, because that's what I need to hide/show. If everything is displayed then I would have to override the module to theme it.
IE, I want to display facebook-status-update-form but not facebook_status_status.
Comment #10
icecreamyou commentedComment #11
Flying Drupalist commentedThank you so much. But I think that the user name in the form returns the incorrect user. (Not the logged in one), though the form itself works correctly.
Comment #12
icecreamyou commentedI fixed that in the very latest -dev. Make sure you're fully up-to-date.
If you still experience the issue, can you elaborate? I can't duplicate the problem as stated.
Comment #13
Flying Drupalist commentedI put this into a block:
The username right before the 'is' input box is my user1, not whichever user is logged in. I did a reinstall with the latest version (according to update status anyway), and this bug is still there. But the form itself updates the logged in user.
Comment #14
icecreamyou commentedThat shouldn't happen, and I can't duplicate the issue. I have, however, discovered a strange and possibly related bug, so I'll see what I can do about that and maybe it will fix your problem.
Comment #15
Flying Drupalist commentedThanks. OK. :) Please let me know when I should update.
Comment #16
Flying Drupalist commentedHi IceCreamYou, I read the other issue, and I don't know how to call it with two parameters: $form_state and $uid, in that order.
Can you please update your example with the latest changes? Thanks.
This one:
$status = facebook_status_get_status($user->uid);
And this one:
print facebook_status_form_display($user->uid);
Comment #17
icecreamyou commentedYou only need to change _form_display(). _get_status() didn't change, since it has nothing to do with rendering or building a form.
...I should probably re-add _form_display() to README.txt...
Comment #18
Flying Drupalist commentedI just want to say thanks for this module again, and the username problem is fixed too.
Comment #19
icecreamyou commentedNo problem. Glad it works.