Planet Drupal

Subscribe to flux Planet Drupal
Drupal.org - aggregated feeds in category Planet Drupal
Mis à jour : il y a 30 min 7 sec

Modules Unraveled: 145 Project Workflow and Drupal Issue Queues with Joshua Mitchell - Modules Unraveled Podcast

mer, 19/08/2015 - 07:00
Published: Wed, 08/19/15Download this episodeDrupal.org
  • Prioritizing work on Drupal.org Drupal.org Roadmap
    • Unblock Drupal 8
      • DrupalCI - testing infrastruture for Drupal code
      • Localize.drupal.org upgrade to D7
    • Improve search
    • Implement new documentation section and tools
  • Two Factor Authentication
  • Issue Credits
  • Funding work
    • D8Accelerate
    • Ongoing Funding
Work that is coming later Questions from Twitter
  • hussainweb
    I think a hierarchical menu system has it's place - Gives a continuity and mark progress if you want to read a topic. #MUP145
  • hussainweb
    Can you attribute different patches in a single issue - some to the organization and some as a volunteer? #MUP145
  • hussainweb
    Some issues get abandoned after some work. Is that never counted? #MUP145
  • Paulius Pazdrazdys
    How much Drupal.org forums are being used? Maby you are thinking to more question -> answer model as stackoverflow has? #MUP145 (Issue about the subject - Petition to move forums to Stack Exchange)
Episode Links: Josh on drupal.orgJosh on TwitterTags: drupal.orgplanet-drupal
Catégories: Elsewhere

KnackForge: Translation in Drupal 7 : How it works?

mer, 19/08/2015 - 06:28

As we all know that, we were all getting projects and clients across the globe. But doing a multilingual website with each having different set of requirements make the website handling tougher and tougher. Also, building a multilingual web site involves much more than translating content from one language to another. Translation must be done with an awareness of a language's idioms as spoken within a geographic region. But in Drupal we’ve been provided with rich set of core and contrib modules, which supports translation for our website(s). When we go deeper in the concept of Drupal Translation, there is a lot more can be learnt. Well, here I explain you a few concepts that i’ve come across.

The Translation Methods:

In Drupal 7, we have two different types of translation methods, which we can call as two main modules to implement translation of content in order to make a site multilingual. One is Entity Translation (contrib) and the other one is Content Translation (core).

  1. Content Translation

    1. a core Drupal module that allows you to translate nodes.

    2. Translated nodes are mapped together, but if they are distinct nodes that can be treated separately.

  1. Entity Translation

    1. Translation module lets you translate particular fields, while only a single node or entity is created.

Catégories: Elsewhere

KnackForge: Add placeholder, Alter or hide image captcha title

mer, 19/08/2015 - 06:17

To add placeholder or alter the title, description and hide of the image captcha, do as follows

Use hook_form_FORM_ID_alter() and Form API pre_render function.

E.g:

/** * Implements hook_form_FORM_ID_alter() */ function MY_MODULE_OR_THEME_form_contact_site_form_alter(&$form, &$form_state, $form_id) { $form['#pre_render'][] = 'yourform_pre_render'; } function yourform_pre_render($element) {   if (isset($element['captcha']['captcha_widgets']['captcha_response']['#title'])) {     // change title $element['captcha']['captcha_widgets']['captcha_response']['#title'] = t('Change title name');  // placeholder add $element['captcha']['captcha_widgets']['captcha_response']['#attributes']['placeholder'] = $element['captcha']['captcha_widgets']['captcha_response']['#title'];  // empty title $element['captcha']['captcha_widgets']['captcha_response']['#title'] = ''; $element['my_captcha_element']['captcha_widgets']['captcha_response']['#description'] = "New Description"; } return $element; }

You can also use hook_form_alter() function:

Catégories: Elsewhere

Colan Schwartz: Get search results for compound words not in content with Drupal, Search API and Solr

mer, 19/08/2015 - 01:01
Topics: 

It is possible to expand compound search terms to multi-term synonyms. That is, if your Drupal site content contains text such as "dark room" or "key note", and you don't want your users to get No results pages on searches for "darkroom" or "keynote" (respectively), you'll need to do a bit of extra work to make this happen.

Let's assume we've got a Drupal 7 site working alongside Solr to provide the advanced back-end search functionality, and the Search API plus Search API Solr Search modules to integrate the two systems. At the time of this writing, this is a widely used best-practice approach. However, it doesn't natively support the above use case.

Some potential options for setting this up include spellchecking and fuzzy searching. But Solr itself already supports the use of synonyms even though the Search API does not. So let's tweak Search API's set-up to work with it.

There are several steps required to make this happen.
  1. If you're got the tokenizer enabled on your search index, disable it by unchecking the box over at Administration » Configuration » Search and metadata » Search API » Your index name » Filters » Processors » Tokenizer, and then save the configuration. If the Tokenizer option is enabled, it will prevent the synonym functionality from kicking in.
  2. Modify the Solr configuration in your search collection over at /path/to/solr/collection-name/conf/schema.xml around line 162.
    • Before:         <!-- in this example, we will only use synonyms at query time
              <filter class="solr.SynonymFilterFactory" synonyms="index_synonyms.txt" ignoreCase="true" expand="false"/>
              -->
    • After:         <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
  3. Define multi-term synonyms in the synonyms.txt file that's in the same folder as the above schema.xml file. Follow the form here.
    • darkroom => dark room
    • keynote => key note
  4. Restart the search engine. This is system dependent, but if you're using the GlassFish application server for example, you may be able to restart Solr with a command like sudo service GlassFish_solr restart.
  5. Clear the search index and rebuild it.
    1. Surf to Administration » Configuration » Search and metadata » Search API » Your index name.
    2. Hit the "Queue all items for reindexing" button.
    3. Hit the "Index now" button.

That should do it. You're all set!

Background reading For more information on how all of this really works, here are some useful articles on the subject.

This article, Get search results for compound words not in content with Drupal, Search API and Solr, appeared first on the Colan Schwartz Consulting Services blog.

Catégories: Elsewhere

Shitiz Gag's Blog: [GSoC 2015: Hawk Authentication] Week 13: Final weeks

mar, 18/08/2015 - 20:21

GSoC is coming to a close, so these few weeks have been mostly about wrapping things up. This is good for me as well because college has taken a toll so I have less and less time to spend, but I believe I have enough to have the module at a good position before GSoC closes.

WWW-Authenticate

WWW-Authenticate is a HTTP header which is used to identify which protocols the server supports. If a server supports multiple WWW-Authenticate headers, it can send it multiple times to identify different protocols. For example: Drupal can send WWW-Authenticate: Hawk and WWW-Authenticate: Basic for identifying that it supports Hawk and Basic Auth. However, Drupal at the moment doesn’t have support for gathering and sending multiple header values from different modules due to the way it handles 401 Authentication Required exception. I will be working on allowing multiple protocols to send WWW-Authenticate so that multiple auth protocols can be identified at the same time.

Testing Hawk and Basic Auth together

I also spent a considerable amount testing these two protocols together, here is a summary of my findings but in summary: Both protocols work well individually but if a client sends requests containing both protocol’s headers at the same time it would cause either to fail due to the way HTTP protocol dictates concatenation of header values. HTTP recommends allowing only a single protocol in one request in order to have fewer points of failure so for the moment I believe this behaviour is fine, however if it is deemed beneficial to allow multiple protocols within same request it is always a possibility.

For now that is all, I’ll be dealing with WWW-Authenticate issue and documentation during my last week of GSoC.

Thank you for reading!

Catégories: Elsewhere

Drupal for Government: Virginia Physician API and Data Mining

mar, 18/08/2015 - 18:54

So recently we discovered http://data.virginia.gov/hhr and since we're looking to help people in Charlottesville I've added the data (thanks to feeds) and we added a couple of data mining points  https://www.cvillecouncil.us/va-physicians (using open layers)for the maps and h

Catégories: Elsewhere

benamer: Check out the Chartbeat Most Popular module

mar, 18/08/2015 - 18:30

You know those lists on a web site that you see from time to time listing the currently Most Popular articles on the site? I have to admit that I click on them from time to time to understand what is popular and why. It's a clear case of herd reading. Well, Drupal has a new module to create a Most Popular list on your site based on the Chartbeat Analytics API and it's written by myself and Darryl Norris. It's available on Drupal.org. 

Catégories: Elsewhere

Acquia Developer Center Blog: Avoiding Fuzzy Math When Load Testing

mar, 18/08/2015 - 17:42

No one likes fuzzy math. It’s especially problematic when you’re conducting a load test and can’t accurately gauge concurrency.

In this last blog of a series on load testing, here are some tips on how to avoid the fuzzy math that can distort your expectations of how a website will perform.

Shaky math can happen when using Apache JMeter, which is the most commonly used application to load test the performance of an open source site.

JMeter breaks it down into three categories: the number of threads that are happening at once, the ramp-up period from zero requests at a time to the max number, and the number of iterations. This typically is the way to determine expected concurrency: the total number of requests divided by average response times over how long you test.

There’s a problem with this method, though. When a site becomes overwhelmed, the response time actually increases, which means concurrency drops. So with such a test, you’re actually simulating the exact opposite of a normal site and not even close to seeing probable concurrency.

But there is a proper way to solve this, a way to get a true glimpse of possible concurrency – it’s something called throughput shaping. You can find it on jmeter-plugins.org. With this tool, you only have to simply say, “I want a thousand requests at once,” and it’s not only accurate but will save time that’s ordinarily lost on JMeter as you first try to figure out things like how many requests will hit your site at once.

Another speed bump to consider is how difficult it’s becoming to properly determine how many requests hit your site. That’s because not every every bot and not all of the “noise” on the Web crosses the path of Google Analytics and Omniture. Likewise, looking at the number of requests to your Web servers on Acquia Cloud, for example, doesn’t take into account if you’re using a CDM. (But if you are using a CDM, that’s the most likely source where you’ll have an accurate number.)

So here’s the last lesson of this series: Don’t extrapolate results. If you’re testing with 150 connections, don’t assume 300 will be exactly twice the number of resources required. Your test will tell you what 150 did. Load testing should be conducted in an environment that’s exactly the same size as what your production environment will be. Sure, it will cost a bit, but it will tell you how things will actually behave.

If your site faces contention – when many visitors simultaneously compete for your application’s attention – it will perform the exact same way if you have 150, 300 or even 600 connections. But the point is, you don’t actually know that; extrapolating results won’t provide an accurate number. Most often people look at the numbers, testing exactly to the numbers they have today. They’re missing more than just surges.

Consider must-visit websites for special events like sporting events and live award shows. They have one or two huge days of traffic a year, but the rest of the year, they’ll have a totally different number of visitors. So, when load testing, it’s not just a matter of looking at numbers. It’s understanding what those numbers actually mean and recognizing your end goal.

I recommend that once you have numbers, always test about 50% above that. Not necessarily because you’ll see that kind of traffic at launch, but if the site’s successful and growing over time, it’s rare that you’ll take the time to go back and run more load tests. By initially testing well above what you’re expecting, you’ll have a buffer and won’t have to worry about how the site is going to behave six months from now.

Hopefully this series has prompted you to think carefully about the nuances of load testing and will help as you prepare to launch a site. Load testing done right can help achieve optimal site performance. And, as I mentioned earlier in the series, your users define where load testing should take place, so you can’t go wrong. If you have any questions or suggestions, please drop a note in the comment box. Thanks for reading.

Blog series: Load Testing Your Drupal WebsiteWorkflow: PendingFeatured: NoTags: acquia drupal planetDrupal 8 related: NoAuthor: Erik Webb
Catégories: Elsewhere

Mediacurrent: Accessible Names - Label All the Things! (Part 1)

mar, 18/08/2015 - 17:24

The more we label things when building a website, the easier it is for a person who is blind and uses a screen reader to use our sites. These labels are known as the “accessible name properties” and they are baked into HTML.  

Catégories: Elsewhere

Imagine Creativity: <a href="/blog/what-drupal-intro-drupal-workshops-global-training-day">What is Drupal &amp; Intro to Drupal workshops - Global Training Day</a>

mar, 18/08/2015 - 17:16

We are happy to announce that we are running Drupal training sessions this month as part of the Global Training Days. The initiative is run by the Drupal Association to introduce new and beginner users to Drupal.

Come and join us on Friday 21st August to learn about what Drupal does and how it can help you. We will discuss the software and show you examples of it in action.

What is a Drupal Global Training Day?

Drupal Global Training Days is a worldwide initiative to increase the adoption of Drupal. All across the world, people are teaching and learning Drupal, and sharing that open source love.

Catégories: Elsewhere

Imagine Creativity: <a href="/blog/drupalaton-2015-our-perspective">Drupalaton 2015 : our perspective</a>

mar, 18/08/2015 - 17:16

Last week we attended Drupalaton for the second year in a row. It was so valuable to us last year we couldn’t resist returning, especially after attending the great events Drupalaton & Drupal Dev Days Szeged last year. See our blog post from last year Drupalaton 2014.

Catégories: Elsewhere

Imagine Creativity: <a href="/blog/drupal-camp-north-why-we-loved-it">Drupal Camp North : Why we loved it</a>

mar, 18/08/2015 - 17:16

This weekend we were very pleased to be able to attend the first Drupal Camp North in Sunderland. The great event took place at Sunderland Software Centre and was made possible thanks to them and Make It Sunderland.

Catégories: Elsewhere

Imagine Creativity: <a href="/blog/come-join-us-drupal-camp-london-2015">Come join us at Drupal Camp London 2015</a>

mar, 18/08/2015 - 17:16

There are only 3 weeks left until Drupal Camp London​ takes place (Fri 27 February - Sun 1 March). It will be hosted by City University London​ in Angel as it has for the past 2 years.

Whether you're a Drupal​ pro or just want to learn more, follow the link for weekend, business day and volunteer tickets.

Session submissions have now closed and are being selected for the schedule. In the meantime feel free to look at last year's site for an idea of what is on offer Drupal Camp London 2014

Drupal Camp London 2015

 

Catégories: Elsewhere

Imagine Creativity: <a href="/blog/drupalaton-2014-hungary-largest-lake-central-europe">Drupalaton 2014 in Hungary, at the largest lake in Central Europe</a>

mar, 18/08/2015 - 17:16

Wow my Hungarian friends - you have done it again! Two weeks ago, I spent a long weekend at Drupalaton, a Drupal camp in Hungary with the difference that it also served as a short relaxing break. It was the perfect combination of a holiday and work with the beautiful surroundings of Central Europe’s largest lake Balaton.

I was very excited to return to the country after the amazing Drupal Developer Days in Szeged event that I went to in March. It was also filled with meeting amazing people from all around the world, learning and sharing knowledge and connecting with so many inspiring people.

Catégories: Elsewhere

Imagine Creativity: <a href="/blog/drupal-west-london-monthly-meetup">Drupal West London monthly meetup</a>

mar, 18/08/2015 - 17:16

Come along to our group if you are interested in learning more about Drupal, are already using it and want to develop your skills, or would like to exchange experiences. I am particularly keen to train local young people, support charities and work on positive projects.

I have worked on the Open Drupal curriculum and mentored Drupal apprentices with it, as well as working with charities, social enterprises and small businesses to implement and support its use. In London we are lucky to have one of the most active physical communities in the UK, but I feel that some of the smaller groups I have visited (in Oxford, Leeds & Hungary) can have a much more of a supportive community feel and I aim to bring what I have learnt from them to this group.

Catégories: Elsewhere

Imagine Creativity: <a href="/blog/drupal-developer-days-2014-szeged-my-perspective">Drupal Developer Days 2014, Szeged - my perspective</a>

mar, 18/08/2015 - 17:16
Background

I had a great time at the Drupal Developer Days in Szeged (Hungary's third largest city) meeting other Drupal developers, core maintainers and people involved in the community. This event has been taking place yearly and brings together Drupal developers and enthusiasts from all over the world. Recent years have seen the event being held in Dublin, Barcelona & Brussels.

Catégories: Elsewhere

Imagine Creativity: <a href="/blog/upcoming-drupal-camps-uk-europe-2014">Upcoming Drupal Camps in UK &amp; Europe 2014</a>

mar, 18/08/2015 - 17:16

After the great time I've recently had at Drupal Camp London and at Drupal Dev Days in Szeged, Hungary I am looking at attending more community events. While looking I found it difficult to see all relevant camps listed in one place with all the information I wanted to see, so I created it. I hope it helps you too!

Catégories: Elsewhere

Chromatic: How To Write A Great Commit Message

mar, 18/08/2015 - 16:02
So annoying. Fixed a bug! Hope I never see this again.

These are not great commit messages; in fact, they are nearly worthless. A great commit message should tell the reader all they need to know about the what of the commit. They should only have to look at the actual diff of the commit to see how it was accomplished.

Anatomy of a Great Commit Message

Think of a commit message like an email:

  • It contains your contact information. You don't even have to do anything; you get this for free!
  • It should have a subject: the shorter, one-line summary.
  • A body: the detailed description.

All commit messages should abide by the following criteria:

  • Begin with a one line summary. It should be capitalized and succinct (50 chars or less).
  • This should be followed by a longer description, if necessary.
  • The first two items should be separated by an empty line.
  • All lines should be wrapped at approximately 72 characters.
  • Reference an issue in your commits whenever possible. If using Github issues, you can reference them by using 'gh-80' for issue '#80'. If your commit completes the issue, you can use a number of terms to close the issue, such as: .Closes gh-80'.
  • If you forget to reference the issue in your commit, and the commit has already been pushed, reference the commit's hash in a comment on the ticket.

Here is a model Git commit message:

Capitalized, short (50 chars or less) summary. More detailed explanatory text, if necessary. Wrap it to about 72 characters or so. In some contexts, the first line is treated as the subject of an email and the rest of the text as the body. The blank line separating the summary from the body is critical (unless you omit the body entirely); tools like rebase can get confused if you run the two together. Further paragraphs come after blank lines. * Bullet points are okay, too. * Typically a hyphen or asterisk is used for the bullet, preceded by a single space, with blank lines in between, but conventions vary here. * Use a hanging indent. Closes gh-80.

The majority of your commit messages may be much simpler than the example above, but pick and choose the appropriate elements. Here is an example more common to the real world:

Fix for editor dashboard showing incorrect date. * Fixed date calculation logic. * Added function docblock to comply with coding standards. * Refactored foreach loop, improving clarity. Closes gh-80.

With just a few small improvements to your commit messages, your fellow developers, and your future self will surely thank you!

Catégories: Elsewhere

Drupal.org Featured Case Studies: AL DÍA News

mar, 18/08/2015 - 15:21
Completed Drupal site or project URL: http://aldianews.com

ALDÍANews.com is a national news outlet offering fully bilingual content, equally accessible in both English and Spanish at the click of a toggle. The new site - which publishes news related to politics, business, culture, opinion, media, and technology - allows readers to quickly and easily choose the language in which they want to view a comprehensive array of content and features optimized for various devices through responsive design.

After evaluating AL DÍA’s content and traffic, we uncovered the untapped potential for a larger audience and advertising stream by repositioning this local news site as a national news platform. The new site implements a number of innovative elements that benefit viewers and advertisers alike, including lightning-fast browsing using AngularJS, a fully bilingual interface, and advertising that can be served to specific sections, topics, or geographies.

Key modules/theme/distribution used: ServicesSimpleAdsTaxonomy menuViewsRadioactivityOrganizations involved: Eastern Standard
Catégories: Elsewhere

Imagine Creativity: What is Drupal & Intro to Drupal workshops - Global Training Day

mar, 18/08/2015 - 13:46
11822447_10153102896299716_3404987443558823562_n.png18 Aug 2015

We are happy to announce that we are running Drupal training sessions this month as part of the Global Training Days. The initiative is run by the Drupal Association to introduce new and beginner users to Drupal.

Come and join us on Friday 21st August to learn about what Drupal does and how it can help you. We will discuss the software and show you examples of it in action.

What is a Drupal Global Training Day?

Drupal Global Training Days is a worldwide initiative to increase the adoption of Drupal. All across the world, people are teaching and learning Drupal, and sharing that open source love.

During the last session run on May, 25 training companies from 15 countries participated in hosting Introduction to Drupal sessions. We are happy to be a part of this for the first time.

The two types of sessions are :-

  • What is Drupal - is a half-day workshop to address the basics of Drupal. It is designed for those interested in evaluating or implementing it.
  • Intro to Drupal - is a full day introductory training workshop. Attendees will leave having successfully built a Drupal site. It is designed for those interested in Drupal as a career path.
Who should attend
  • Web developers/designers willing to get started with Drupal.
  • Project managers managing or considering Drupal projects.
  • Decision makers evaluating Drupal. 
What is Drupal - Course outline
  1. Introduction to CMS
  2. Why Drupal; Comparative analysis of Drupal with other CMS.
  3. Case studies / Sites using Drupal
  4. When to and not to use Drupal?
  5. Where to find Drupal and Drupal installation
  6. Inside of DrupalGetting a functional site set up in 30-45 mins. Using contrib modules/themes/distributions, and getting community-based support
    1. Overview of each item of admin menu (e.g. Content, Appearance)
    2. Create and edit content
    3. Work with menus from admin
    4. Content type and its usage
    5. Block and where to find them
    6. Working with roles and users
  7. Getting a functional site set up in 30-45 mins.
  8. Using contrib modules/themes/distributions, and getting community-based support
  9. Support Drupal.org and Drupal Association
We are holding this event in partnership with CVS Brent, who will be hosting us. They work with many charity & voluntary sector organisations to better deliver their services.

Tags: DrupalTrainingDrupal Planet
Catégories: Elsewhere

Pages