User login

Benjamin Melançon

Staying Free: Contributing to Drupal and the World by Building Our Collaboration Infrastructure

Talk Description: *
[The talk will cover the concepts of the below, but shorter and better and more specific where it matters and the presenter will be better looking than and more articulate than i am in reality, too.]

Our software is free.

We are free.

Both are in part because we are craftspeople who can be compensated quite well. We have remarkable control over our work, and we have time to put into building Free Software and the community around it.

This fortune and freedom is historically crushed out of every trade.

Drupal (Site Builder) Usability module

the Drupal usability module, Book module edition:

move Book module's Add child page link to the action links location.

make an Add book action item (or items if multiple content types are enabled) to the book listing page at admin/content/book

Content Gallery

actually, you'd want to see an example of one entity of each entity type per build mode! All conveniently linking to the respective manage displays page.

File: 

Better Image Insert Workflow

A truly slick configuration of Insert and Image Resize Filter would disable insert if the img tag is not available for the selected text format.

Safe Text: Filtered HTML Plus

The safetext module began as an idea for an installation aid, but

Any anonymous or just-registered authenticated user should be able to access the filtered HTML format, if you so choose. Trusted (but non-editor and non-admin) user roles should be able to access filtered HTML plus, meaning with images, at the least.

Loyalty oath

The phrase loyalty oath was the nicest, shortest way i could think of invoking the evil of the Inquisition, witch trials, and red scares. Questioning people's motivations and intentions, rather than acting on what people do, is a quick way to tearing apart communities and, at worst, destroying lives.

I talk about the movement and consciousness and solidarity, including in a Drupal context— i'm all for being aware of a greater good and doing things for that reason. But if we start questioning everyone's commitment, we're done before we've begun.

CSS and JavaScript aggregation in Drupal 7

stefan:h ave you noticed that javascript and css aggregation does not work as expected on dgd7.org.
17:28 mlncn: how do you expect it to work? they changed it in D7, mostly for the better
17:28 stefan-agaric: there's 3 css and 2 js that seems to be created by it.
17:28 mlncn: there's more files, but they aren't recreated as often
17:28 stefan-agaric: what's the point?
17:29 mlncn: or rather, i should say, there's more files per page but fewer files when browsing around the site
17:29 stefan-agaric: we only need one.

An Online Account / Social Media field type

You enter your username or ID and check off all the places it applies: Twitter, Facebook, IRC, etc.

There's a bit of a pitfall for places like drupal.org where your profile URL is not based on the username.

Or should it be entirely do-it-yourself?

My username/ID is:
On website:

Making a block example done live at WesternMassDrupalCamp 2011

The most fun lesson learned– passing in a pure integer to the $block['content'] in the implementation of hook_block_view causes an unsupported operand error so deep in the block rendering system the stack trace doesn't even know where it came from.

<?php
/**
* Implements hook_block_info().
*/
function dgd7glue_block_info() {
  $blocks = array();
  $blocks['twoplustwo'] = array(
    'info' => t('Two plus two.'),
  );
  return $blocks;
}

Block all variations of a GMail e-mail address

Other projects and ideas / questions / solutions in this general ideaspaceHow can I block a spammer from repeatedly registering? http://drupal.org/node/139738

Register Pre-approved
http://drupal.org/project/register_preapproved

Storage structure for AJAX Form Messages

By using field storage, we get access to translation.

We've defined the info files, made them dependent on the core module. That was fun!

Caching is fun to implement, but try to hold off until you have all your functionality in place. As someone somewhere surely said (OK, it was Donald Knuth), "Premature optimization is the root of all evil."

We could define our form messages as a nested array analogous to menu definitions— a form ID,

Fields offer the advantage of understanding translation for user-entered data. Therefore, using fields, there's a potential

Syndicate content