Feel free to change this to the correct component, but I believe this would affect the theme system.
How about allowing blocks to have further capabilities than just being a set box of space. Authenticated users can already choose not to see a block, if you give them the capability to. However, they need to go to their account, edit it and then find the form group that will allow them to hide a block.
My ideas are to give the user a much ease of managing a customizable block. The two main features to accomplish this is...
1) Instead of having the block visibility editable on the Edit Account for the user. Give them a little maybe 8x8 icon of an 'X' in the subject of the block that will hide the block for the user and save it as if they went to their account and turned off the block. Remember, they will only have the 'X' on blocks you allow the user to hide.
2) This feature is like the first, in that you would have an icon that can change the block as a part of the block. However, this feature would have maybe a '-', that would minimize the content section of the block, but leave the subject with, instead of a '-', a '+' in place to allow the user to then maximize the content section back to full size. I would think that this feature could be done with jQuery's slideUp/Down functions. However, this feature would need some place to store, to keep the block minimized on future pages.
Let me know what other people's ideas are on these features. Thanks.
Comments
Comment #1
TapocoL commentedNoone has replied, so I don't know if it is lack of interest. Or, if people had a hard time envisioning my ideas.
I have come up with a possibility of how you can add an 'X' to the top right portion of a block. Tell me if this would even be a possibility for Drupal 7. If there is no interest, then I guess there is no reason for me to look into how to try the minimize/maximize feature.
I added this function to Garland's template.php
I added the following to Garland's style.css
I added the following to a custom module I created just for this.
Comment #2
cburschkaIt would be awesome if this were combined with some Ajax. Also, I don't remember what is the official place Drupal core gets GPL icons, but they definitely have a red X that would fit here.
(This also reminds me of the idea of dragging and dropping blocks between regions, but that would be an admin/build/blocks thing and go far beyond the scope of this feature request.)
Comment #3
TapocoL commentedThose other features would be awesome, but I don't really have the concept of what you would need to do with drupal. I am not that experienced with the potential security holes from AJAX. So, that is why I tackled this problem with just pages that redirect back to the same page. A good idea would be to save the info with AJAX, and use jQuery to make it disappear on the current page. Then, future page requests will load without the block at all since AJAX saved it. A little icon is what I had in mind for the 'X', but I just wanted to show how to accomplish this. Hopefully, someone will want to work with me on this, since I don't know how to work with CVS, yet. So, I cannot create patches for drupal.
Comment #4
cburschkaDon't let this fall under the radar, please. Done well, this would make the user interface as neat as Google News - removing, minimizing, resizing and dragging blocks.
Comment #5
drawk commentedI agree that this is a cool idea, particularly if AJAXified. I wonder what sort of burden this would introduce to theme developers, though, to account for the shrinking (when minimized) or disappearing (when deleted) page elements. Seems like a good candidate for a contrib module to me, and after being out in the wild and refined for awhile, with a better assessment of the theming issues it might introduce then perhaps brought up as something to be introduced into core.
Changing to active as there is no patch here.
Comment #6
effulgentsia commentedThese ideas sound great. I'd love to see them in action as a contrib module for D7. With D7's render API, hook_page_build(), and hook_page_alter(), you can even disable block.module and enable some BETTER_BLOCK.module, or you can have a module that improves on block.module while leaving it enabled. If a contrib module gets made and proves itself, we can then evaluate whether it makes sense to incorporate those ideas into the core block.module for D8.
Comment #7
jhedstromComment #23
smustgrave commentedThank you for sharing your idea for improving Drupal.
We are working to decide if this proposal meets the Criteria for evaluating proposed changes. There hasn't been any discussion here for over 8 years which suggests that this has either been implemented or there is no community support. Your thoughts on this will allow a decision to be made.
Since we need more information to move forward with this issue, the status is now Postponed (maintainer needs more info). If we don't receive additional information to help with the issue, it may be closed after three months.
Thanks!
Comment #24
smustgrave commentedNot sure I follow but wanted ot bump 1 more time before closing.