Newsfeeds

File download token

New Drupal Modules - 3 October 2018 - 3:47am

The module provides a very basic API to grant download access to a file with a tokenized url that is valid for a certain amount of time.

The included submodule "File download token webform" uses this to enable you to provide a file download link in the handlers of a webform (e.g. in an email notification). The file can be selected in the "Confirmation"-Configuration of the webform.

Categories: Drupal

lakshminp.com: Automating deployment of Drupal using Ansible

Planet Drupal - 3 October 2018 - 2:58am
Automating deployment of Drupal using Ansible lakshminp Wed, 10/03/2018 - 05:58

In the previous post, we created and booted a fully dockerized Drupal setup. We will be using Ansible to automate the whole deployment process from start to finish.

Why Ansible

Primarily because I'm a huge fan of Ansible. It is agentless, has a great ecosystem, the YAML syntax is simple to read, understand and maintain(honestly, sometimes it is tiring to figure out what exactly is happening). This could be automated using any other provisional tool like Chef or Puppet as well.

Categories: Drupal

"Hey, I have to interview someone in 30 minutes. Give me a crash course." - by Coray Seifert

Gamasutra.com Blogs - 3 October 2018 - 2:16am
Recently, a colleague came to me with a conundrum. It went something like this: "Hey I have to interview someone in 30 minutes. Give me a crash course." This is the interviewing crash course that came out of that conversation.
Categories: Game Theory & Design

OSTraining: How to Rewrite the Output of Views Fields

Planet Drupal - 3 October 2018 - 2:06am

One of our customers asked how to tweak the fields of a table output by Views to give the table a cleaner look.

They were looking for a way to merge the fields of the first and second columns. They also wanted to display the file download link just with an icon.

There are a couple of ways to achieve this. One of them is to rewrite the output of Views’ fields.

This tutorial will explain how to rewrite the results of any Views’ field independently of the display of the view (i.e. table, list, grid, etc).

Let’s start!

Categories: Drupal

Geocoder Healthz Check

New Drupal Modules - 2 October 2018 - 10:19pm

An Geocoder API key validity check for Healthz.

Allows your health monitoring service to periodically check Geocoder API's are valid and reachable.

Categories: Drupal

Elasticsearch Connector Autocomplete

New Drupal Modules - 2 October 2018 - 10:10pm

This module ads the ability to configure the elasticsearch index and fields to index edge ngrams, which improves autocompletion results for search_api, elasticsearch_connector and search_api_autocomplete module.

Categories: Drupal

Contact Lite - No-frills simple site-wide contact form with captcha

New Drupal Modules - 2 October 2018 - 4:49pm

The "Contact" module provided in Drupal core is very simple. What if we make it more simpler?

Contact Lite module is created for my personal site use (https://ayesh.me), but is now published on drupal.org because sharing is caring.

This module provides a very simple contact form, that only includes name, email and the message fields, and are always sent to the site administrator email address. This module does NOT provide a user contact form.

Categories: Drupal

PUBG has banned 13 million cheating players to date

Social/Online Games - Gamasutra - 2 October 2018 - 12:57pm

PlayerUnknown†™s Battlegrounds has banned over 13 million players since the game's publisher started sharing ban numbers in June 2017. ...

Categories: Game Theory & Design

Tencent testing facial recognition to enforce playtime restrictions in China

Social/Online Games - Gamasutra - 2 October 2018 - 12:32pm

Tencent is testing out a new method of identifying Honour of Kings players in order to enforce playtime restrictions for underage players that uses some level of facial recognition tech. ...

Categories: Game Theory & Design

Webform Google Sheets

New Drupal Modules - 2 October 2018 - 11:28am

Exports webform submissions into Google Sheets.

Categories: Drupal

Drupal Association blog: Summary of the September 10, 2018 Board Meeting

Planet Drupal - 2 October 2018 - 10:03am

On September 10, 2018, the Drupal Association Board met at the DrupalEurope event in Darmstadt, Germany.

You can find the official meeting minutes and board packet on the Board Meeting Minutes and Materials page of the Drupal.org website.

Thank you to our outgoing class of board members

We want to say a special thanks to our outgoing class of board members. Their service has helped define the course for Drupal Association in recent years, and their contributions to this community are immense.

Donna Benjamin

Donna is a long-time advocate of Open Source in Australia, and has served on the Drupal Association Board since2012. Donna was a consistent voice for inclusiveness, global representation, and community. In Drupal Europe Donna led a panel about the past, present, and future of the DA. Thank you, Donna!

Sameer Verma

Sameer served two terms on the Drupal Association Board, bringing his background as a Professor of Information Systems at SF State to provide historical insight into the wider open source world, as well as deep knowledge of Drupal in Higher Ed. Sameer's knowledge of strategic frameworks helped to level up board conversations.

Steve Francia

Steve Francia joined the Drupal Association Board to bring to bear his perspective from leading a wide variety of different open source projects, including MongoDB, Docker, Hugo, and Go. Steve helped provide an understanding of Drupal's context in the larger world, and most notably, he shared that in his keynote at DrupalCon Nashville. Thank you, Steve!

Shyamala Rajaram

Shyamala was elected in 2016 by the community to serve a two-year term on the Drupal Association Board. Shyamala enhanced the global perspective of the board, and helped to tie the Asian (and especially Indian) community more closely with the DA. Shyamala is now deeply involved in creating the local Indian Drupal Association.

Welcome to our new board members

Suzanne Dergacheva

Suzanne was elected by the community earlier this year to serve a two-year term on the Drupal Association Board. Suzanne has regularly spoken at Drupal events, runs an in-depth Drupal training program, and has more than a decade of experience in Drupal.

Vishal Mehrotra

Vishal's role as the head of Open Source Technology Solutions at Tata Consultancy Services gives him a wealth of experience with the open source landscape, both in Drupal and beyond. His experience at a major SI will help the board drive conversations about adoption of Drupal as the hub of a web solution for major service providers.

Luma Dahlbacka

Luma brings her experience as a Managing Director of Charles Schwab to share her knowledge of the Financial Technology space, and Drupal's impact on these organizations and end-users. Luma manages a large Drupal installation, and can provide a powerful end-user perspective on Drupal's future.

Until next time

We hope you can join us for our future board meetings, which will be announced soon.

Categories: Drupal

Acro Media: Digital Downloads using the Drupal Media Module

Planet Drupal - 2 October 2018 - 9:15am

The Media module made its way into Drupal core for the Drupal 8.4 release a while back. It gives Drupal users a standardized way for managing local media resources, including image, audio, video, and document files. We wanted to add using this module into our Drupal Commerce demo site to give an example of how this module could potentially be used in a Commerce setting.

In this Tech Talk video, I’ll quickly show you how we updated our digital download Commerce product example to use the Media module, giving us the flexibility to add audio samples to the product page and access to the full download after purchase.

Background

The product I wanted to update is the Epic Mix Tape by Urban Hipster digital download example product. This is a fake album featuring all of your favourites by artists you’ve never heard before. The idea is to showcase that you can add digital products to a Drupal Commerce based online store, not just physical products.

Originally we were using just a standard file field that, when checkout was completed, gave the customer access to download the file. This was done before the Media module made its way into core. Now that the Media module is in core, we figured it’s time to update it.

Setting up an Album media type

When the Media module is installed you get some new admin menu items. The first is a section called Media Types (under Structure) where you can configure your media entities like any other Drupal content entity. Here I created an ‘Album’ media type with two unlimited file fields, one for sample audio tracks and one for the full audio tracks. This is the basis for creating my downloadable albums.

The second admin menu is under Content. Here you get a new Media tab which is where you can add, edit and remove any media items. Since I already created the Album media type I can now add the Epic Mix Tape album files here. This completes the media side of the updated digital download product. All I need to do now is update the product configuration to use it.

Completing the digital download product configuration

Now that the media type has been added and I’ve uploaded an album, I need to set up a way to use it. It’s pretty easy to do. First, for the digital download Product Type, I add an entity reference field to give a way for selecting the album media entity to use for the product samples.

I then do the same thing for the Product Variation Type. This one, however, will be used to give access to the full files after purchase.

Finally, some template updates. The Drupal Commerce demo site has some pretty custom template files for the products. In the template, I access the media entity directly and loop through the items, printing each audio sample and track title onto the product page. I do the same thing for the checkout complete page but print out the full tracks instead.

Depending on your templates and display settings, you can get similar results without manually accessing the files in the template file, however I wanted to print out the file description with the audio player right on the page. Showing the description unfortunately is something you don’t have the option of doing using the standard audio display widget.

And that’s it! Check out the Urban Hipster Drupal Commerce demo site below to see it in action.

Categories: Drupal

Commerce Aramex API

New Drupal Modules - 2 October 2018 - 7:17am
Categories: Drupal

lakshminp.com: Using Drupal and Docker in production

Planet Drupal - 2 October 2018 - 7:09am
Using Drupal and Docker in production lakshminp Tue, 10/02/2018 - 10:09

In the previous post, we created a setup to run Drupal + Docker in local. With a skip and a jump, we can make the same setup run in production as well. We'll do a deep dive of the same in this post.

Categories: Drupal

Narrativizing Night in the Woods - by Justin Reeve

Gamasutra.com Blogs - 2 October 2018 - 7:09am
How do systems and story interact? This article examines how Night in the Woods puts the mechanics in support of the story - not the other way around.
Categories: Game Theory & Design

Acquia Developer Center Blog: Defending Against a Self-Propagating Drupal Botnet Attack

Planet Drupal - 2 October 2018 - 7:00am

On the 28th of March 2018 the Drupal Security Team announced SA-CORE-2018-002, a serious Remote Code Execution vulnerability, which came to be known by many as "Drupalgeddon 2". Here's what we learned defending against it.

Tags: acquia drupal planet
Categories: Drupal

Drupal Modules: The One Percent: Drupal Modules: The One Percent — Access by Reference (video tutorial)

Planet Drupal - 2 October 2018 - 6:58am
Drupal Modules: The One Percent — Access by Reference (video tutorial) NonProfit Tue, 10/02/2018 - 08:58 Episode 46

Here is where we bring awareness to Drupal modules running on less than 1% of reporting sites. Today we'll consider Access by Reference, a module which lets content editors easily grant other users access to specific nodes.

Categories: Drupal

Web Wash: Search across Fields in Views using Combine Fields Filter in Drupal 8

Planet Drupal - 2 October 2018 - 6:30am

I was recently looking at all the default views that come with Drupal 8. For people who don't know, the Views module is part of Drupal 8 core. In Drupal 7 and below it's the most installed module so during Drupal 8's development it was decided to move Views into core.

During my exploration into all of the default Views, I noticed that in the People (User) view there was a filter called "Combine fields filter".

Want to learn about Views? Read Build a Blog in Drupal 8: Using Views or watch it as part of our FREE Drupal 8 Site Building course.

Now just a quick side note, if you're new to Drupal and Views I'd highly recommend you spend time walking through all of the default views and see how they were configured. You can learn a lot just by seeing how things are set up.

The "Combine fields filter" does a pretty cool thing. It allows you to search across multiple fields or put another way, it allows you to combine fields and then filter by their combined value.

Categories: Drupal

Wim Leers: API-First Drupal: what's new in 8.6?

Planet Drupal - 2 October 2018 - 6:28am

Drupal 8’s REST API reached a next level of maturity in 8.5. In 8.6, we matured it further, added features and closed some gaps.

Drupal 8.6 was released 1 with some significant API-First improvements!

The REST API made a big step forward with the 6th minor release of Drupal 8 — I hope you’ll like these improvements :)

Thanks to everyone who contributed!

  1. File uploads! #1927648

    No more crazy per-site custom REST resource plugins, complex work-arounds or base64-encoded hacks! Safe file uploads of any size are now natively supported!

    POST /file/upload/node/article/field_hero_image?_format=json HTTP/1.1 Content-Type: application/octet-stream Content-Disposition: file; filename="filename.jpg" [… binary file data …]

    then, after receiving a response to the above request:

    POST /node?_format=json HTTP/1.1 Content-Type: application/json { "type": [{"value": "article"}], "title": [{"value": "Dramallama"}], // Note that this is using the file ID we got back in the response to our previous request! "field_hero_image": [ { "target_id": 345345, "description": "The most fascinating image ever!" } ] }

    If you’d like a more complete example, see the change record, which explains it in detail. And if you want to read about the design rationale, see the dedicated blog post.

  2. parent field on Term now is a standard entity reference #2543726

    "parent": [] ⬇ "parent":[{ "target_id": 2, "target_type": "taxonomy_term", "target_uuid": "371d9486-1be8-4893-ab20-52cf5ae38e60", "url": "https://example.com/taxonomy/term/2" }] We fixed this at the root, which means it not only helps core’s REST API, but also the contributed JSON API and GraphQL modules, as well as removing the need for its previously custom Views support!

  3. alt property on image field lost in denormalization #2935738 "field_image":[{ "target_id": 2, "target_type": "file", "target_uuid": "be13c53e-7f95-4add-941a-fd3ef81de979", "alt": "Beautiful llama!" }]

    after denormalizing, saving and then normalizing, this would result in:

    "field_image":[{ "target_id": 2, "target_type": "file", "target_uuid": "be13c53e-7f95-4add-941a-fd3ef81de979", "alt": "" }]

    Same thing for the description property on file and image fields, as well as text, width and height on image fields. Denormalization was simply not taking any properties into account that specializations of the entity_reference field type were adding!

  4. PATCHing a field → 403 response without with reason #2938035

    {"message":"Access denied on updating field 'sticky'."} ⬇ {"message":"Access denied on updating field 'sticky'. The 'administer nodes' permission is required."}

    Just like we improved PATCH support in Drupal 8.5 (see point 4 in the 8.5 blog post), we again improved it! Previously when you’d try to modify a field you’re not allowed to modify, you’d just get a 403 response … but that wouldn’t tell you why you weren’t allowed to do so. This of course was rather frustrating, and required a certain level of Drupal knowledge to solve. Now Drupal is far more helpful!

  5. 406 responses now lists & links supported formats #2955383

    Imagine you’re doing a HTTP request like GET /entity/block/bartik_branding?_format=hal_json. The response is now more helpful.

    Content-Type: application/hal+json {"message": "No route found for the specified format hal_json."}

    Content-Type: application/hal+json Link: <http://example.com/entity/block/bartik_branding?_format=json>; rel="alternate"; type="application/json", >http://example.com/entity/block/bartik_branding?_format=xml>; rel="alternate"; type="text/xml" {"message": "No route found for the specified format hal_json. Supported formats: json, xml."}
  6. Modules providing entity types now responsible for REST tests

    Just like we achieved comprehensive test coverage in Drupal 8.5 (see point 7 in the 8.5 blog post), we again improved it! Previously, the rest.module component in Drupal core provided test coverage for all core entity types. But if Drupal wants to be API-First, then we need every component to make HTTP API support a priority.
    That is why in Drupal 8.6, the module providing an entity type contains said test coverage (A). We also still have test coverage test coverage (B). Put A and B together, and we’ve effectively made HTTP API support a new gate for entity types being added to Drupal core. Also see the dedicated blog post.

  7. rest.module is now maintainable!

    I’m happy to be able to proudly declare that Drupal 8 core’s rest.module in Drupal 8.6 can for the first time be considered to be in a “maintainable” state, or put differently: in a well-maintained state. I already wrote about this in a dedicated blog post 4.5 months ago. Back then, for the first time, the number of open issues fit on “a single page” (fewer than 50). Today, several months later, this is still the case. Which means that my assessment has proven true :) Whew!

Want more nuance and detail? See the REST: top priorities for Drupal 8.6.x issue on drupal.org.

Are you curious what we’re working on for Drupal 8.7? Want to follow along? Click the follow button at REST: top priorities for Drupal 8.7.x — whenever things on the list are completed (or when the list gets longer), a comment gets posted. It’s the best way to follow along closely!2

The other thing that we’re working on for 8.7 besides the REST API is getting the JSON API module polished to core-worthiness. All of the above improvements help JSON API either directly or indirectly! I also wrote about this in my State of JSON API blog post. Given that the REST API is now in a solid place, for most of 2018 the majority of our attention has actually gone to JSON API, not core’s REST API. I expect this to continue to be the case.

Was this helpful? Let me know in the comments!

For reference, historical data:

  1. This blog post is long overdue since 8.6 was released almost a month ago. Some personal life issues caused a delay. ↩︎

  2. ~50 comments per six months — so very little noise. ↩︎

Categories: Drupal

Pages

Subscribe to As If Productions aggregator