weitzman's blog

I'll be deeply integrating panels and organic groups over the coming weeks. Today I want to show what is possible __now__. Each group type on your site (you do know that you can have multpiple types of groups, right?) can have its own custom homepage presentation. This screenshot tutorial shows you how to do it.

Tags:

The Post Carbon Institute graciously offerred to sponsor me to integrate Panels and Organic Groups modules. Here is brief milestone plan:

One custom panel for each group node type

This functionality exists today without any changes to either og or panels. In order to complete this milestone, Moshe shall document the steps required to achieve this. The documentation should include screenshots and help text.

Multiple custom panels for a given group, created by a group admin. Admin chooses which one is his group home page.

Here we introduce a new module, og_panels, which ships with og. It lets group admins create/edit displays which are attached to group. The implementation will resemble the integration of display customization in panels_node.module. Displays are stored in the usual panels_displays table and the mapping of display to group is done in a new table managed by this module. When displaying a group homepage, we will use nodeapi(view) to render our display if so configured. og_nodeapi() will gracefully get out of the way in this case.

Optimize the panel creation UI for group admins. Remove cruft.

The panel UI might confuse group admins at first. Do whatever is reasonable to mitigate this confusion. This may require patches from Panels project.

Future

  • Let group posts (i.e. not group homepage) get own panel. In other words, a group post will look different from a non group post. For example, they might show the list of recent posts from each affiliated group in a section of the page.
  • Let group admins submit new layouts for panels. I suspect they will not use PHP but rather an email variables syntax like @left-2 for a given pane.
  • Let admins submit custom CSS for their group.
Tags:

Dries' landmark post regarding unit testing in Drupal reminds me that I have yet to announce a key transition in our project. I recently handed over maintainership of the simpletest project to Rok Žlender. Rok has been leading its development for over a year now, and the project has flourished under his guidance. We now have a large number of tests, and a largish number of contributors. Rok has earned this module, and I'm proud and happy to hand it to him on behalf of the Drupal community.

I created the simpletest module for Drupal on Feb 27, 2004. Here is an excerpt form the commit message:

Tags:

I often am asked about which features I plan to add to Organic Groups module. Here is a list of major features that are on my list.

I'm looking for sponsors to pay me (or another person if that makes sense) to implement these features. These are non trivial features; I expect each sponsorship to cots approximately US$5000. Please do contact me if you are interested. I will credit you on the OG module page, in the README file, and on my personal blog. The community will thank you greatly.

In no particular order ...

Panels2 integration and flexible group homepage(s)

See issue. In order to customize the group home page, you currently have to theme it or you can swap in any custom View for the one that og provides. I want to leap light years ahead and let group admins create as many flexible group pages as they wish. The pages can have a layout of their choice (including grou specific CSS), and content of their choice. All this will be powered by Panels module. And admins will be able to name one of those pages as their group homepage. This greatly improves the ability of group admins to design their own mini website thats tailored to their needs.

Tags:

FYI, I stumbled upon some useful code by drawk and contributed it to drupal.org as the new Views Audit module.

The goal of this module is to log when Views are used on your site. After a little while, you view an admin page which shows Views that are no longer used. This is nice for keeping your Views list tidy.

This module adds one SQL write query per View on the page so I don't recommend leaving it enabled in production for weeks at a time. But 48 hours should be fine for most sites.

Tags:

Reposted from drupal.org for those who live in their news readers.

Screenshot of theme developer module

I’ve been showing off this module privately, but it is now time to broadcast the news. Drupal themeing has taken a major leap forward. Watch the screencast. Let me be the first to welcome a thousand terrific new designs and designers to our project.

The new module is called Theme developer and it can be downloaded as part of the devel project. We have built Firebug for Drupal Theming. You may now click on any part of the page and a sexy popup display shows which theme function/template outputted the HTML, and what other files could have done so. Armed with this info, a themer may quickly and accurately override the presentation. Further, all the variables passed into the template/function are presented for review.

Watch the screencast

Implementation notes

  • The basic idea of the module is that it uses hook_theme_registry_alter() to make itself receive all theme calls. Thus, it logs all the variables that are received and the templates that could have been called, and were eventually called, and so forth. It finally delegates to the original theme function for generating the HTML. Finally, it takes the generated HTML and wraps it in span tags in order to identify what HTML belongs to what theme call. Those span tags get classes attached for the red border that follows the cursor.
  • The popup window gets all its data from a huge javascript array in Drupal.settings. This array stores data about each call.
  • In order to receive the same drill down behavior as in the screencast for the variables listing, you should install krumo. See the README file.

Screenshot of theme developer module

Backport to Drupal 5

I have not attempted a backport, since it would certainly require significant a patch to the core theme API. Others are welcome to try.

Help

If you’d like to help with this module, or ask questions, please use the issue queue for devel project - http://drupal.org/project/devel

Credits

Tags:

I've just seen a beautiful web site for a beautiful product and become ill as a result. Feast your eyes on the Washlet, a toilet seat which wipes your ass for you. Washlet is clearly designed by the world's top user experience engineers. You can just tell that it is a high performance piece of gear, like a BMW or an Ipod. And washlets can be found in 60% of homes in Japan.

The Washlet web site is remarkably clean and pleasing. Roll over the talking heads (innovative navigation!) and listen to the pleasing chimes. The only trouble is ...

We are overheating our Earth. Our food supply is poorly distributed. Our disaster response capability is medieval. These exciting and interesting engineering problems, but our brightest engineers are designing Washlets. This is not at all good. May I remind you about the demise of Easter Island. Read it.

Tags:

I've recently become interested in the One Laptop Per Child project. It is based in my hometown of Cambridge, MA, and seeks to produce a laptop which costs $100. The idea then is to make sure that every kid who wants one can have one. Anywhere in the world. It is am ambitious project, and on the face sounds impossible on many levels. But the world's best minds are involved and they are making rapid progress.

For example, consider the power problem. namely, many kids have no easy access to electricity. So in order to use a laptop they must get power from some off the grid source. Check out the power source for the laptop - It is a pull cord!. Before you scoff, here are the specs from Potenco, its designer.

A minute of pulling the PCG (pull cord generator) generates enough energy for:

* 20 minutes of talk time on a mobile phone
* 1 hour of Ultrabright flashlight use
* 4 hours play time on an iPod Shuffle

Just pull for a few minutes and then compute. Brilliant!




feature

Originally uploaded by dratz.

Hint: this is a Volkswagon Bug.

The joke will only be clear to IT folks so don't feel bad if you can't figure it out.

I'd like to share some notes about recent decisions made by the Drupal Association, Board of Directors.

ACCOUNTING
* We voted to hire a Belgian accounting firm to advise us on taxes, membership details, non profit do's and don'ts, and so on. This vote followed after a lot of research and meetings by DriesK and DriesB in particular. The Drupal Association is first and foremost a "bank" for the Drupal project so bookkeeping is really really important.

DRUPAL.ORG HARDWARE
* We authorized the infrastructure manager (Gerhard Killesreiter) to make hardware purchases up to $15K Euro. He is required to post a plan for purchasing to the Association mailing list and wait 5 days for comment. Since the Association meets about once a month, we needed a way to make purchases without votes. This authorization serves that need. Also, drupal.org desperately needs hardware upgrades so this vote was a no brainer.

We also discussed a number of topics like advertising on drupal.org and Barcelona Drupalcon. These topics didn't lead to formal votes.

MISC
* The Board meets over IRC. We use the hand protocol to maintain order. It works pretty well ... The hardest part is agreeing about what time the meeting starts in various time zones and daylight savings configurations.

Powered by Drupal, an open source content management system

About

Moshe WeitzmanMoshe Weitzman is a long time Drupal developer (since 2001). He manages groups.drupal.org and the Organic Groups module. His tiny company, Cyrve, specializes in data migration into Drupal. Read about his past projects (e.g. NY Observer) and contact him.

Moshe lives in Boston USA with his wife and 2 girls.

My Photos

Think!

Change Congress

Support CC - 2007

Support Obama 2008

Stop the Spying - EFF

Syndicate

Syndicate content