As per instructions on this page: http://drupal.org/drupal-services I'd like to request that CivicActions, LLC be added to the List of Drupal Services Providers. CivicActions, LLC http://www.civicactions.com info (AT) civicactions (DOT) com 2917 Ashby Ave. Berkeley, CA 94705 Phone: (510) 684-3180 Our description would/should read as follows: CivicActions provides strategic consulting, technology planning, visual and information design, and web solutions for content management, on-line/off-line communities, constituent relationship management, e-advocacy, e-canvass and online fundraising tools. Our services empower distributed networks to protect the environment, advance peace, improve public health, promote education, champion social and economic justice and increase human potential. CivicActions has deployed more than 40 Drupal powered websites since March of 2005, ranging from basic promotional sites to complex e-commerce, multi-media and political websites. Our clients include ShiftInAction, Jim Hightower and the Hightower Lowdown, Public Interest Pictures, Jerry Brown, ACLU.TV, AlGore.org and many others. We strive to build upon and improve existing modules when possible. As appropriate we fund or write custom modules, always with the goal of returning the code to the broader Drupal community. Our recent contributions include: MediaMover http://cvs.drupal.org/viewcvs/drupal/contributions/modules/media_mover/, Views Faster Search <http://dev.civicactions.net/moin/ViewsFastSearch> http://drupal.org/project/views_fastsearch, Release Monitor <http://dev.civicactions.net/moin/ReleaseMonitor> http://drupal.org/project/releasemonitor, Selenium http://drupal.org/project/selenium and NINA http://drupal.org/project/nina and many others (Views Alpha Pager, Coder Module, Date Range, Filter Block, PHP Free Chat) The CivicActions Team consist of experts practicing in strategic consulting, infromation architecture, user experience design and testing, systems engineering, graphic design, project management. CivicActions team members live where they want have a flexible work schedule work for clients they are passionate about. This flexibility tends to attract "Renaissance" men and women: people who -- in addition to their passion for technology -- are also literacy activists, Appalachian songwriters, personal transformation coaches, organic farmers, project managers by day/trapeze artists by night, and programmers with degrees in art and political science. We meet at least three times each year for full team retreats in various places (recently in New Orleans, Amsterdam and Sonoma) and have regular engineering and project team retreats and sprints. CivicActioners actively engage their communities and bring their interdisciplinary approaches into their work with technology. "Thinking outside the box"-- a phrase corporations use to encourage innovation -- is not something we try to do. We live it. As a policy http://www.civicactions.com/license, we honor freedom. All of our source code and materials are licensed under either GPL, AGPL or Creative Commons. By leveraging free and open source software we deliver the maximum value to our clients and team members alike. -- ---- Gregory Heller AIM/SKYPE: GregoryHeller http://www.CivicActions.com Changing the world one node at a time! The content of this email message is licensed under a Creative Commons Attribution-ShareAlike 2.5 License, Some Rights Reserved. http://creativecommons.org/licenses/by-sa/2.5/
Added here http://drupal.org/node/127804 On 3/14/07, Gregory Heller <gregory@civicactions.com> wrote:
As per instructions on this page: http://drupal.org/drupal-services
I'd like to request that CivicActions, LLC be added to the List of Drupal Services Providers.
CivicActions, LLC http://www.civicactions.com info (AT) civicactions (DOT) com 2917 Ashby Ave. Berkeley, CA 94705 Phone: (510) 684-3180
Our description would/should read as follows:
CivicActions provides strategic consulting, technology planning, visual and information design, and web solutions for content management, on-line/off-line communities, constituent relationship management, e-advocacy, e-canvass and online fundraising tools. Our services empower distributed networks to protect the environment, advance peace, improve public health, promote education, champion social and economic justice and increase human potential.
CivicActions has deployed more than 40 Drupal powered websites since March of 2005, ranging from basic promotional sites to complex e-commerce, multi-media and political websites. Our clients include ShiftInAction, Jim Hightower and the Hightower Lowdown, Public Interest Pictures, Jerry Brown, ACLU.TV, AlGore.org and many others.
We strive to build upon and improve existing modules when possible. As appropriate we fund or write custom modules, always with the goal of returning the code to the broader Drupal community. Our recent contributions include: MediaMover http://cvs.drupal.org/viewcvs/drupal/contributions/modules/media_mover/, Views Faster Search <http://dev.civicactions.net/moin/ViewsFastSearch> http://drupal.org/project/views_fastsearch, Release Monitor<http://dev.civicactions.net/moin/ReleaseMonitor> http://drupal.org/project/releasemonitor, Selenium http://drupal.org/project/selenium and NINA http://drupal.org/project/nina and many others (Views Alpha Pager, Coder Module, Date Range, Filter Block, PHP Free Chat)
The CivicActions Team consist of experts practicing in strategic consulting, infromation architecture, user experience design and testing, systems engineering, graphic design, project management. CivicActions team members live where they want have a flexible work schedule work for clients they are passionate about. This flexibility tends to attract "Renaissance" men and women: people who – in addition to their passion for technology – are also literacy activists, Appalachian songwriters, personal transformation coaches, organic farmers, project managers by day/trapeze artists by night, and programmers with degrees in art and political science. We meet at least three times each year for full team retreats in various places (recently in New Orleans, Amsterdam and Sonoma) and have regular engineering and project team retreats and sprints.
CivicActioners actively engage their communities and bring their interdisciplinary approaches into their work with technology. "Thinking outside the box"– a phrase corporations use to encourage innovation – is not something we try to do. We live it. As a policy http://www.civicactions.com/license, we honor freedom. All of our source code and materials are licensed under either GPL, AGPL or Creative Commons. By leveraging free and open source software we deliver the maximum value to our clients and team members alike.
-- ---- Gregory Heller AIM/SKYPE: GregoryHeller http://www.CivicActions.com
Changing the world one node at a time!
The content of this email message is licensed under a Creative Commons Attribution-ShareAlike 2.5 License, Some Rights Reserved. http://creativecommons.org/licenses/by-sa/2.5/
-- 2bits.com http://2bits.com Drupal development, customization and consulting.
With some implementation help from chx, I proposed a new hook at issue http://drupal.org/node/127262. I am just bringing this up here to get quick focus and a double check of idea. The actual code change is rather small, so I was hoping it could be reviewed and accepted/rejected early on, before the flood of more major updates and ideas comes as we approach the code freeze. The basic justification for this new hook is found in the issue, pasted here for quick reference. "As I have been working on the functional implementation for a new community Drupal site, I have been seeing the need to customize many of the core Drupal messages (the drupal_set_message function), as required by the needs of the site. A typical example would be when a contact message has been sent, the default message is 'The message has been sent.' An small change might be to 'Thank you, your message has been sent.' A more dynamic change would be 'Thank you Greg, your message has been sent'. The first change could be accomplished using the locale module methodologies found in http://drupal.org/node/58030. But there are two short-comings to this method. First, even though all core modules use t() for the text to make it translation ready, many contributed modules do not. Second, the translation method only allows for string replacements, not dynamic insertions. Granted some of the messages place the user's name or other dynamic information into the message, but the basic idea is that you can only change what is given you, you can't add to it. The contact message is a perfect example, there is no way to add the user's name to the message. That is why I am going to propose a new drupal hook, hook_message_alter(&$message = NULL), allowing the $message to be changed by reference. It would hook into the drupal_set_message function. All messages would invoke this hook, giving designers and developers the ability to customize those messages completely to suit their site." -Greg
Greg Holsclaw wrote:
short-comings to this method. First, even though all core modules use t() for the text to make it translation ready, many contributed modules do not.
If you find such a module, please file a bug against it. Not translating user visible output isn't acceptable. Cheers, Gerhard
Unfortunately, there are many. I will try to compile a list and submit bugs, but even the best modules like devel miss t() on a message or two. A quick search results in 1305 uses of drupal_set_message in 5.x releases modules, and quick look around found almost 10 in less than 100 messages checked. Of course, the underlying need for this hook is still present even if all modules use t(), due to the fact that dynamic insertion of change of the message is not possible through the translation method. -Greg -----Original Message----- From: development-bounces@drupal.org [mailto:development-bounces@drupal.org] On Behalf Of Gerhard Killesreiter Sent: Friday, March 16, 2007 10:30 AM To: development@drupal.org Subject: Re: [development] Proposed hook_message_alter Greg Holsclaw wrote:
short-comings to this method. First, even though all core modules use t() for the text to make it translation ready, many contributed modules do not.
If you find such a module, please file a bug against it. Not translating user visible output isn't acceptable. Cheers, Gerhard
----- Start Original Message ----- Sent: Fri, 16 Mar 2007 10:49:13 -0700 From: "Greg Holsclaw" <Greg.Holsclaw@trouvemedia.com> To: <development@drupal.org> Subject: Re: [development] Proposed hook_message_alter
Unfortunately, there are many. I will try to compile a list and submit bugs, but even the best modules like devel miss t() on a message or two. A quick search results in 1305 uses of drupal_set_message in 5.x releases modules, and quick look around found almost 10 in less than 100 messages checked.
It's not just messages. And also, if there a lot, then there should be critical (yes, this IS critical) bugs filed for every single project saying "there are t calls missing" and adding a few examples. Let the (co)maintainers find the others. It's not that you shall scourge 1000+ modules. t() must be a habit because if you get used to output raw, then you will have an XSS hole before long which t() could have avoided. That's why it's critical.
Maybe this also means that for some modules which can't use t(), it might be a worthwile recommendation to module authors to comment in code why they are not using it: there are still some cases where you can't use it. This could (should ?) be added to the t() api page, and maybe to the module developer's guide. ----- Original Message ----- From: "Karoly Negyesi" <karoly@negyesi.net> To: <development@drupal.org> Sent: Saturday, March 17, 2007 6:23 AM Subject: Re: [development] Proposed hook_message_alter ----- Start Original Message ----- Sent: Fri, 16 Mar 2007 10:49:13 -0700 From: "Greg Holsclaw" <Greg.Holsclaw@trouvemedia.com> To: <development@drupal.org> Subject: Re: [development] Proposed hook_message_alter
Unfortunately, there are many. I will try to compile a list and submit bugs, but even the best modules like devel miss t() on a message or two. A quick search results in 1305 uses of drupal_set_message in 5.x releases modules, and quick look around found almost 10 in less than 100 messages checked.
It's not just messages. And also, if there a lot, then there should be critical (yes, this IS critical) bugs filed for every single project saying "there are t calls missing" and adding a few examples. Let the (co)maintainers find the others. It's not that you shall scourge 1000+ modules. t() must be a habit because if you get used to output raw, then you will have an XSS hole before long which t() could have avoided. That's why it's critical.
Maybe this also means that for some modules which can't use t(), it might be a worthwile recommendation to module authors to comment in code why they are not using it: there are still some cases where you can't use it.
Out of curiosity and in case I should know this, in what situations can I not use t()? Joakim
Typically when you are using hook_init or hook_exit, IIRC. http://api.drupal.org/api/5/function/hook_init http://api.drupal.org/api/4.7/function/hook_init http://api.drupal.org/api/4.6/function/hook_init http://api.drupal.org/api/5/function/hook_exit http://api.drupal.org/api/4.7/function/hook_exit http://api.drupal.org/api/4.6/function/hook_exit See for instance http://drupal.org/node/58497 ----- Original Message ----- From: "Joakim Stai" <joakimstai@gmail.com> To: <development@drupal.org> Sent: Saturday, March 17, 2007 10:33 AM Subject: Re: [development] Proposed hook_message_alter
Maybe this also means that for some modules which can't use t(), it might be a worthwile recommendation to module authors to comment in code why they are not using it: there are still some cases where you can't use it.
Out of curiosity and in case I should know this, in what situations can I not use t()?
Joakim
participants (7)
-
FGM -
Gerhard Killesreiter -
Greg Holsclaw -
Gregory Heller -
Joakim Stai -
Karoly Negyesi -
Khalid Baheyeldin