Acquia Developer Center Blog: Extending Drupal Translations for Custom Entity in Drupal 7

hello in many languages

Drupal 7 core, together with Drupal contrib, has the ability to ship a powerful platform for our digital requirements in the enterprise world. The multilingual feature is one of the prime reasons that Drupal is a distinguished and a preferred solution to achieve business goals. Drupal 8 includes the multilingual package in the core itself, but Drupal 7 requires some extra amount of effort to build this package as a whole to make Drupal multilingual ready.

Drupal Association blog: Announcing Future DrupalCon North America Locations

When we say DrupalCon, the upcoming DrupalCon Seattle 2019 event is probably what first comes to mind. But while we have been selecting sessions, setting up BoFs, and letting you know about the additions to our Con, we at the Drupal Association have also been looking ahead to DrupalCons of the future. We are excited to share those with you now.

In the past, we used to announce the next DrupalCon location during the closing session of the previous Con. This was a lot of fun, but created some logistical problems for the events team, and made it difficult to do all the work we need to do to secure our next con locations. It is a multi-year process to secure a venue for DrupalCon, so we’ve made some changes that help us coordinate with venues, hotels, and partners without relying on a veil of secrecy.

You first saw this change during the DrupalCon Nashville Closing Session, where we announced both 2019 (Seattle) and 2020 (Minneapolis).

We’re taking these changes a step further by looking far into the future to announce the North American DrupalCons for 2021, 2022, 2023 and 2024. We’re thrilled to announce the selected cities, as well as share the process that went into making these selections.

Where DrupalCon is going

Together with each of our partner cities, we’re excited to announce the upcoming locations for DrupalCon North America:

  • DrupalCon Boston 2021 (April 16-21)
  • DrupalCon Portland 2022 (April 25-29)
  • DrupalCon Pittsburgh 2023 (June 2-9)
  • DrupalCon Portland 2024 (May 6-10)

Want to understand the process that goes into city selection? The search for each location starts four or more years before the event, and you can read on for the inside scoop into how this plan came together. Wondering why all the selected cities are in the USA? We encourage you to read our prior blog about why the sustainable choice for North American locations is in the United States for the foreseeable future.

How we got here 

Planning for the future

Historically, DrupalCon locations have been contracted a couple of years before they happened, in a city where we were excited to host the community, that we revealed in a fun fashion at our Closing Session the prior year.

However, announcing the new event only a year in advance—and selecting new cities for every event—created some logistical problems; conference center venues large enough to host DrupalCon are often booked four or more years in advance. This has meant that cities we would love to visit have often simply been booked during the dates that would work with our community needs, or are too expensive because we couldn’t make multi-year commitments – which took a lot of options off the table.

In benchmarking ourselves with comparable conferences (in size, audience, and program), it became clear that many established organizations were booking multiple years in advance. This is in part due to the availability of desirable cities, but also that securing locations in the future equates to more competitive pricing.

As the Drupal Association matures and starts leading change in the community and in the open source world, we determined it was best to look farther into the future for our largest annual conference.

Creating a location pattern that the community can count on

We took a serious look at data from past attendance, the locations we’re trying to reach, and where we see the most traction from the community.

In analyzing data from DrupalCons dating back to DrupalCon Austin 2014, we were able to deduce some high-level insights about our attendees:

  • 88% of attendees at DrupalCon North America come from the United States
  • In hosting a DrupalCon in a coastal city in the USA, attendance from the regional community local to those cities can be 13-17% higher than the regional attendance we see in other cities (not counting those who travel greater distances).
  • Conversely, when hosting a Con in the center of the country, attendance decreases significantly from the coastal audiences and does not significantly increase from the hosted-area region.

With the majority of our conference attendees in mind, we set out to host our conference in coastal cities, where, by ‘showing up’ our community has proven they want to go. This led us to primarily work on sourcing East Coast and West Coast cities for the upcoming years.

With our upcoming DrupalCon Seattle 2019 on the West Coast, and DrupalCon Minneapolis 2020 in the middle of the USA, we aimed to host DrupalCon 2021 on the East Coast, and from there, jump between the coasts for the foreseeable future.

The benefits of repeating cities

As we did with timing and location, we also stepped back to ask ourselves, why do we move this conference every year? The logical answer is that it makes the conference more accessible to new audiences in different areas. But our past attendee data doesn’t support this conclusion. So we asked ourselves again: If it isn’t bringing in large numbers of new first-time attendees, why do we search for a new city every year?

We had heard anecdotally that it was because ‘Drupalers like to go on vacation in new cities’ and that ‘it helps grow the community in a new city,’ but these answers aren’t well supported by the data, so we decided to re-evaluate our strategy.

When we release our RFP to the world, we work internally with the Drupal Association Board to determine our Selection Criteria. A lot of this hasn’t changed because the Con hasn’t changed drastically in a few years. The top 5 things that we evaluated in each city’s bid were:

  • Large/versatile venue – Could the venue fit our 150+ sessions, 3,000 people for lunch, and the breadth of programming offered at our Cons?
  • Popular tourist area – Do people want to go there? Is there a wealth of activities for them post-sessions each day?
  • Strong business community – Do we already have partners in the city? Is it a place our sponsors have expressed as a city where they’d like to do business?
  • Tech-focused city – Is the city supportive of tech and open source? Are there businesses and organizations that may participate in our event because we are in their city?
  • Large and strong Drupal community – Does this city have a community that has hosted a successful camp in the past? Is there a solid community that regularly meets and would help support the planning of a Con?

It had been a few years since we selected new DrupalCon cities, so reviewing and updating the criteria seemed prudent. We added and changed the following criteria:

  • CHANGE: In the venue criteria, we included the ability to change the program around, since as the community grows and changes, we want to be able to flex our program.
  • ADD: Welcoming to all attendees. We wanted to make sure that topics such as legislative actions, political climates, and inclusiveness of the cities were taken into account to ensure that we were placing our Con in a city where all members of our community would feel welcome.
  • CHANGE: When DrupalCons were mostly managed by the community, the need for a large and strong community was imperative to the success of a Con. Since the Drupal Association has taken on the bulk of planning, pricing, and executing of the Con, the need for the community to be of a certain size is no longer a qualifying factor. In fact, by changing the focus, we could look at cities that didn’t have large community groups at the time, but maybe a Con could inspire one.

When we examined our search criteria and started matching it up with real cities that we could reach out to, the list became short. With that reality, it became apparent that we would need to begin repeating cities. We seized the opportunity to proactively address that reality.

In speaking with tech event leaders from other communities and organizations, it was helpful to get a fuller understanding regarding the benefits of repeating a city location:

  • Time: Securing multiple years can save an organization time, money and peace of mind. By doing this, you eliminate the need to do site visits and RFP gathering again the following year.
  • Staff Capacity: By hosting an event somewhere you’ve already been, the staff does not need to learn a new floor plan, crew, process, regulations, etc. It is estimated that in eliminating these normal challenges of a new venue, that the staff capacity can be reduced by 25%, freeing them up to focus on the event itself.
  • Negotiation: Planners can gather information on the facility once and focus on strategic negotiating, which translates to consistent concessions and commissions with minimal increases in rates/pricing annually.
  • Cost Savings: Event budgets can be determined early, giving the planner more time to focus on the important things like planning for the success of the event. And, if you have done all of this well in the beginning, you will have the peace of mind to know that you are prepared for surprises that inevitably come along.
  • Relationships: Multiyear contracts require a partnership. Planners, venues, and hotel partners can create a strategic plan to build the event and their services. In working with a crew for more than one year, improvements can be made and the crew is better prepared to serve the attendees the next time around.

Getting from ideas to contracts

We released our RFP on August 13, 2018, on the Drupal Association blog. It was also sent to multiple cities that met our criteria. Within our RFP, we shared our tight timeline, with the goal of signing contracts for 2021, 2022, 2023, and 2024 by the end of 2018. Below is a glimpse into the work that transpired between launch date and sign date.

  • September 4, 2018. Is the date that we requested cities submit their detailed bids. Per our RFP, we had multiple questions about space needs, catering, AV, diversity and inclusion, internet, hotels, and more.
  • September 5-11. Partnering with our fantastic production partner, Groundswell Marketing, we reviewed the proposals to see if any questions arose initially about the information provided. Most proposals were 30+ pages of information with pricing grids, proposed hotel blocks, and ‘why our city’ info. We ask each city for some hard numbers on regular items like a gallon of coffee or the hourly rate of an AV technician. This helps us immediately get a picture of a Con cost.
  • September 11 – September 17. For cities we hadn’t been to before, the next step was to interview the city via a Zoom call to better understand how they were a good fit for our conference. Questions like ‘how would attendees be made to feel welcome in your city?’ and ‘How easy and affordable is it to get from the airport to the Convention Center?’ are asked in our initial determination.
  • September 18 – 21. Once we determined cities that met our criteria, we dug a bit deeper into each city’s numbers. We laid out the entire Con on their floor plans to determine if we could fit and how. We inquired about real quotes for line items like our AV and our internet. We costed out catering estimates and space rental.
  • September 24 – October 26. With our list in hand, we did our due diligence visiting possible future Con locations. In these meetings we reviewed the space and discussed how the attendee experience would feel. We met representatives from various departments of the Convention Center’s team to negotiate pricing and discuss pain points. We also did a whirlwind tour of the city to get a feel of what attendees would see/do after the Con each day.
  • October 29 – November 14. We reviewed all of this information with the Drupal Association leadership team and collaboratively determined the priority of cities based on our search criteria. Going further, we then included data points on pricing, incentives, conference dates, etc, to come to a final recommendation for each year.
  • November 15 – December 3. Built a working budget with concrete numbers for each preferred city to get an accurate future picture of finances. This involved getting future pricing on catering, network, hotel rates, etc. Worked back and forth with the city to negotiate down pricing.
  • December 5. Presented recommendation to the Drupal Association Board for buy-in and support.
  • December 6 – 27. Requested contracts from our preferred venues and hotels. Each city has one Convention Center, and at least 5 hotels, so in asking for these hotels, we had about 20 contracts to review. By looping in our legal team and our insurance group, we were able to further negotiate terms that make committing to future years smart, sustainable, and safe.
  • December 28. Signed the last contract and sent it off to the cities. Signing before the end of the year met a contracting deadline that gave us a lot of financial benefits.
  • End of December. CELEBRATED the end of this intense and action-packed process, and the future of sustainable and secured DrupalCon programming.

Serving our community

We aim toward growing adoption, one of the Drupal Association’s main goals. In planning ahead and setting ourselves up for a sustainable and fiscally responsible future conference plan, we can allocate our resources better to focus on creating a successful event that drives to this goal. By making these decisions now, we work to strengthen the foundation of the Association in order to continually work to serve our incredible and growing open source community.

We appreciate the questions and interest that community members have had in this process and were happy to do a deep dive to show you the planning, strategy, and work involved in selecting a city for a future DrupalCon. We invite you to share your thoughts and comments below, and we look forward to seeing you at a Con in the future.

Aten Design Group: Run Better Events for Your Library

If your library hosts community programs and events, you should check out Intercept: a new product for helping libraries run better events. Intercept makes it easy to create and manage events. Even better, it provides actionable reports to help measure success and recommend strategic improvements for your programs in the future.

Intercept Features

Intercept provides valuable features for event management, equipment reservations, room reservations and customer tracking.

Event Management

  • Easily add and edit events.
  • Book rooms at the time of event creation.
  • Host events at outside venues.
  • Make custom templates for quickly creating future events.
  • Create recurring events.
  • Set up registration for events, including waitlists.
  • Browse events as a list or grid-style calendar.
  • Filter events by type, audience, location, date and keyword.
  • Save and register for events.
  • See similar events based on type and location.
  • Receive recommendations for other events based on your preferences, events you’ve attended and/or saved.
  • Analysis for events.

Equipment Reservations

  • Browse and reserve available equipment.
  • Set reservation periods by item.
  • Manage and approve requests.
  • Report on equipment usage.

Room Reservations

  • Customize rooms and locations.
  • Browse rooms by type, capacity and timeframe.
  • Reserve rooms with validation to ensure rooms are not double-booked.
  • Deny or approve reservation requests, with email notifications.
  • Staff reservations are automatically approved.

Customer Tracking

  • Ability to integrate with popular Integrated Library Systems (ILS).
  • Integrates with Polaris ILS.
  • Single sign-on with website and ILS.
  • Allow attendees to scan into events with their library cards.
  • Gather and analyze feedback from customers.
  • Analyze event attendance numbers with population segmentation
  • Download a CSV report on attendance.

Built By Libraries, For Libraries

Intercept was built as one part of a large redesign and redevelopment project with Richland Library. From the beginning, Richland’s vision was to both create a product to help measure the effectiveness of its own events, and to release that product to the wider community of public libraries. More than five years of user research, planning and beta testing have gone into this product to date. Intercept was designed and developed by a team intimately familiar with the problems that it solves.

Open Source

Intercept was architected as a suite of modules for Drupal 8, is open source, and is freely available to all. You can download an early version of the code from Drupal.org at https://drupal.org/project/intercept, and the most recent version will available there soon. If you’re interested in learning more about using Intercept to help make your library’s events even better, we’d love to help! Just drop us a line on our contact page and we’ll be in touch right away.

Drupal blog: Happy eighteenth birthday, Drupal

This blog has been re-posted and edited with permission from Dries Buytaert’s blog.

Eighteen years ago today, I released Drupal 1.0.0. What started from humble beginnings has grown into one of the largest Open Source communities in the world. Today, Drupal exists because of its people and the collective effort of thousands of community members. Thank you to everyone who has been and continues to contribute to Drupal.

Eighteen years is also the voting age in the US, and the legal drinking age in Europe. I’m not sure which one is better. 🙂 Joking aside, welcome to adulthood, Drupal. May your day be bug free and filled with fresh patches!

Security advisories: Drupal core – Critical – Third Party Libraries – SA-CORE-2019-001

Project: 
Date: 
2019-January-16
Vulnerability: 
Third Party Libraries
Description: 

Drupal core uses the third-party PEAR Archive_Tar library. This library has released a security update which impacts some Drupal configurations. Refer to CVE-2018-1000888 for details.

Solution: 
  • If you are using Drupal 8.6.x, upgrade to Drupal 8.6.6.
  • If you are using Drupal 8.5.x or earlier, upgrade to Drupal 8.5.9.
  • If you are using Drupal 7.x, upgrade to Drupal 7.62.

Versions of Drupal 8 prior to 8.5.x are end-of-life and do not receive security coverage.

Fixed By: 

Additional information

Note: Going forward, Drupal core will issue individual security advisories for separate vulnerabilities included in the release, rather than lumping “multiple vulnerabilities” into a single advisory. All advisories released today:

Updating to the latest Drupal core release will apply the fixes for all the above advisories.

Security advisories: Drupal core – Critical – Arbitrary PHP code execution – SA-CORE-2019-002

Project: 
Date: 
2019-January-16
Vulnerability: 
Arbitrary PHP code execution
Description: 

A remote code execution vulnerability exists in PHP’s built-in phar stream wrapper when performing file operations on an untrusted phar:// URI.

Some Drupal code (core, contrib, and custom) may be performing file operations on insufficiently validated user input, thereby being exposed to this vulnerability.

This vulnerability is mitigated by the fact that such code paths typically require access to an administrative permission or an atypical configuration.

Solution: 
  • If you are using Drupal 8.6.x, upgrade to Drupal 8.6.6.
  • If you are using Drupal 8.5.x or earlier, upgrade to Drupal 8.5.9.
  • If you are using Drupal 7.x, upgrade to Drupal 7.62.

Versions of Drupal 8 prior to 8.5.x are end-of-life and do not receive security coverage.

.phar added to dangerous extensions list

The .phar file extension has been added to Drupal’s dangerous extensions list, which means that any such file uploaded to a Drupal file field will automatically be converted to a text file (with the .txt extension) to prevent it from being executed. This is similar to how Drupal handles file uploads with a .php extension.

phar:// stream wrapper disabled by default for Drupal 7 sites on PHP 5.3.2 and earlier

The replacement stream wrapper is not compatible with PHP versions lower than 5.3.3. Drupal 8 requires a higher PHP version than that, but for Drupal 7 sites using lower PHP versions, the built-in phar stream wrapper has been disabled rather than replaced. Drupal 7 sites using PHP 5.2 (or PHP 5.3.0-5.3.2) that require phar support will need to re-enable the stream wrapper for it; however, note that re-enabling the stream wrapper will re-enable the insecure PHP behavior on those PHP versions.

It is very uncommon to both be running a PHP version lower than 5.3.3 and to need phar support. If you’re in that situation, consider upgrading your PHP version instead of restoring insecure phar support.

Reported By: 
Fixed By: 

Additional information

Note: Going forward, Drupal core will issue individual security advisories for separate vulnerabilities included in the release, rather than lumping “multiple vulnerabilities” into a single advisory. All advisories released today:

Updating to the latest Drupal core release will apply the fixes for all the above advisories.

OPTASY: How Do You Deal with Duplicate Content in Drupal? 4 Modules to Get this Issue Fixed

How Do You Deal with Duplicate Content in Drupal? 4 Modules to Get this Issue Fixed

How Do You Deal with Duplicate Content in Drupal? 4 Modules to Get this Issue Fixed

adriana.cacoveanu
Wed, 01/16/2019 – 17:08

Accidentally creating duplicate content in Drupal is like… catching a cold: 

It’s as easy as falling off a log.

All it takes is to:
 

  • further submit your valuable content on other websites, as well, and thus challenging Google with 2 or more identical pieces of content
  • move your website from HTTP to HTTPs, but skip some key steps in the process, so that the HTTP version of your Drupal is still there, “lurking in the dark”
  • have printer-friendly versions of your Drupal site and thus dare Google to face another duplicate content “dilemma”
     

So, what are the “lifebelts” or prevention tools that Drupal “arms” you with for handling this thorny issue?

Here are the 4 modules to use for boosting your site’s immunity system against duplicate content.

AddWeb Solution: Our dearest, Drupal, turns 18!

We’re all engrossed in the mode of celebration and the festive fly game was on point. In fact, everyone else was too painted in that mood, cheering and celebrating the spirit of flying. But our zest for celebration was a notch hire, for our reason for celebration was doubled. 15th January is not merely a date when the kite-flying festival falls but that’s the very day when our dearest of all – Drupal came into existence!

 

Eighteen years before this very day, the very first version of Drupal – 1.0.0 was released by its founder – Dries Buytaert. And just as it happens with all other path-breaking changes world, this one too came with a lot of faith but a humble approach towards its future. And look, how proficiently has it grown in all these years. Today, it’s one of the largest and most-trusted open-source community and the future looks even brighter.  

 

In the age of data-threats, Drupal is trusted for its security, worldwide. Constantly moving towards strengthening the open-source community, Drupal has never compromised on the security, content, and scope. Drupal is also known for its power of personalisation and flexibility. Drupal Commerce is also the preferred one when it comes to building an easy-looking e-commerce platform with complex functionalities. And if that was not enough, the launch of Decoupled Drupal has blown the tech world like a boss!

 

We might sound a little biased here, but we’re speaking nothing but the truth. Everyone from ‘The Beatles’ to ‘Estee Lauder’, ‘Columbia University’, ‘NBC Universal’, ‘NBA’, ‘Paramount’ and many more have trusted and adapted Drupal for years now. Dries has rightly quoted about it in his birthday note for Drupal and let us also conclude, our birthday note for Drupal, on the very same note –

,

         “What do the biggest brands in the world have in common?” – ‘Powered by Drupal!’

 

          Happy 18th birthday to Drupal!