All RPGs and Storygames by Tod Foley are now available at DrivethruRPG and RPGnow. Bring these games to your table!
In September, Freelock was recognized as a leading web development company in Seattle by Clutch. Not only were we thrilled to be featured in that report and ranked as one of the top three web developers in the area, but we are excited to share that as a result, Clutch interviewed us on our web development expertise.Drupal PlanetSecurityDrupalWordPressDrupal 8CMS
Image Field Repair is a module that repairs image fields that are touched by issue #2644468: Multiple image upload breaks image dimensions.
As you may know, Drupal 6 has reached End-of-Life (EOL) which means the Drupal Security Team is no longer doing Security Advisories or working on security patches for Drupal 6 core or contrib modules - but the Drupal 6 LTS vendors are and we're one of them!
Today, there is a Moderately Critical security release for the Autologout module to fix a Cross Site Scripting (XSS) vulnerability.
This module provides a site administrator the ability to log users out after a specified time of inactivity.
The module does not sufficiently filter user-supplied text that is shown when logging a user out. This vulnerability is mitigated by the fact that an attacker must have a role with the permission "administer autologout".
See the security advisory for Drupal 7 for more information.
Here you can download the Drupal 6 patch.
NOTE: This only affects the Autologout 6.x-4.x branch -- the 6.x-2.x branch (which we also support) isn't vulnerable.
If you have a Drupal 6 site using the Autologout module, we recommend you update immediately.
If you'd like all your Drupal 6 modules to receive security updates and have the fixes deployed the same day they're released, please check out our D6LTS plans.
Note: if you use the myDropWizard module (totally free!), you'll be alerted to these and any future security updates, and will be able to use drush to install them (even though they won't necessarily have a release on Drupal.org).
- A pop up with a sale countdown timer.
- Access to a section of the site where you can edit countdown timer.
- Preview the sale popup so that I can verify it all looks clean.
- Display the sale popup either in modal window, or at the top of the page
Adds an event subscriber to handle XSD validation exceptions from turnerlabs/validating-xml-encoder by outputting the error message in a comment at the top of the XML output.
PXE, sounds like pixie. Pixie dust. Sprinkle a pretty XSD error comment on your invalid dirty XML.
Commerce Guys: Commerce Braintree integration adds PayPal Express Checkout and PayPal Credit support
Drupal Commerce is more than just a module project. As I laid out in my session at DrupalCon Vienna, it is an entire ecosystem supported by dozens of agencies and powering well over $1.5bn in online transactions annually. This makes Drupal Commerce one of the largest open source eCommerce projects in the world, and it's thanks in no small part to our Technology Partners (comprised primarily of payment providers) that we are able to invest as much of our time in it as we do.
Braintree is one such partner and a fantastic supporter of Commerce 2.x since last Summer. During our sprint to release a beta at DrupalCon Dublin, they sponsored Bojan's time for two weeks to expand and improve the core Payment API.
As a result, they also became the first integrated payment gateway and the test case for any payment provider following their integration pattern - individual iframes embedded into the checkout form for each payment field, making it easy to securely collect payment card data through your own checkout form.
For the initial release of the Commerce Braintree integration on Drupal 8, we targeted basic credit card payment support via their Hosted Fields API. As of this week, we've finalized patches that add support for PayPal Express Checkout and PayPal Credit alongside credit card payment through Braintree. They are a PayPal company, after all!
Customers can pay via credit card on-site or Express Checkout via a modal dialog.
You can test the new features end to end by grabbing the latest release of the Commerce Braintree module and configuring it to work through the Braintree sandbox. If you get stuck, you can find us in the #commerce channel in the Drupal Slack or open an issue in the queue if that's not possible.
Thanks again to Braintree for their support and development sponsorship. If you'd like to learn more about how Technology Partners benefit our ecosystem, consider joining me and Commerce Braintree's D7 co-maintainer Andy Giles this weekend at DrupalCamp Atlanta (Nov. 3-4). I'll present a longer version of my DrupalCon session, Marketing and Selling the Drupal Commerce Ecosystem, and naturally I'll tap Andy to help me answer all your hardest questions. ; )
Views display plugin that displays items within responsive columns.
The number of columns will change depending on screen width.
Column counts and break points are defined within the view plugin settings.
Renamed and moved to https://www.drupal.org/project/pxe
Lots of live Commerce 2 sites were actively and successfully selling products to people long before the official launch on September 20th. We ourselves were among the early adopters taking advantage of the new functionality available in Drupal 8. But as with any new-and-not-fully-tested technology, there were the inevitable growing pains: missing functionality, bugs, etc. Fortunately, most of those issues are now in the past.
A few core modules that were buggy but are solid now:
- Promotions and coupons
- Payments (supports 30+ payment gateways!)
As an added bonus, the Commerce Shipping module that Acro Media helped develop received a full stable release alongside Commerce 2 (which is especially cool when you remember that Commerce 1 launched with no shipping functionality at all). Commerce Shipping features a much improved API and includes support for UPS and FedEx, with USPS to follow shortly.
Acro Media and other community members have been working on a few other associated modules to go along with the Commerce 2 launch. Here are the details:
- Point of Sale is going to alpha release
- Commerce Migrate is going to have a new release (likely not a stable release, however, as there is still work to be done migrating edge cases)
Ubercart to Commerce 2 migrate is mostly done and includes all core stuff like products, customers, orders, taxes, etc.
Commerce 1 to Commerce 2 migrate is a little rough but is still very usable; an improved version should be ready in October sometime
A cool new Composer based Commerce Kickstart installer is also available! It represents a great improvement over the original Commerce Kickstart and should be easier for everyone to use. You can find that here.
TLDR: The fully supported, stable release of Commerce 2 is live and has lots of cool stuff with it. If you were hesitant to use it to build sites before, you most certainly can go ahead now.
You most likely created image styles with Drupal's "Scale and crop" image effect. This style allows you to display large images on a smaller scale and save precious screen space.
There is one issue with such styling though. Often the most interesting point of the image gets chopped off. The "Focal Point" contrib module helps avoid this issue.
In this tutorial, you will learn to use this module to select the most important portion of the image you would like to show to your readers.
Webform Analysis allows you to find the "Analysis" tab present on the "webfom" module on Drupal 7.
It allows to obtain first statistics on the results of form submissions.
File Base64 formatter is a simple module that provides a way to encode files
as Base64. It works with file fields only.
Testing a lot of pages after small changes in CSS files - again and again... Looks familiar? Gemini gets you rid of this waste of time. We will show you how to write Gemini tests and extend this tool.
Drupal Modules: The One Percent: Drupal Modules: The One Percent —Multiple Registration (video tutorial)
Here is where we seek to bring awareness to Drupal modules running on less than 1% of reporting sites. Today we'll consider Multiple Registration, a module which gives you the ability to create role-specific registration pages.
Yesterday a project on github was moved, causing Drupal's own build process, and that of many other websites, to “break”. Here's what happened:
- The coder library was removed from github (it's main home is on drupal.org).
- Drupal core's composer.json had a reference to the now non-existent repository.
- Anyone attempting to obtain Drupal by downloading it's source and running composer install couldn't.
- Many other developers who tried to build their websites were similarly left disappointed.
This seems to be a risk that comes with dependency management, and raises the question of should vendor be committed to version control? I'm hoping that this post will help you answer that.
Commerce Paycom integration
Still under active development, description will be updated soon
Here at Aten, we do a lot of work with Drupal, mostly on large redesign projects for nonprofits and universities. We’ve been in the business for a while now (since 2000), and one thing we’ve been talking about for years is the predicament of “buy-maintain-replace” release cycles. Specifically, website redesigns often fall prey to a problematic purchasing cycle that directly counteracts strategic goals.
It goes like this: first there’s a capital campaign, then a big spike in funding to do a redesign project, followed by modest support budget for a few years. During support, things everyone would like to change start to pile up, often beginning as a “backlog” or “wish list,” inevitably becoming a “gripe list” for all the things that are slowly and surely making your website obsolete. Time passes and the gripe list grows. We hear things like, “Our current website is horribly outdated; it isn’t even responsive.” Rather than invest in old technology and continue addressing the growing list of issues, tasks are pushed off for a future redesign. Eventually, there is a new capital campaign. The cycle starts over, rinse and repeat.
If you’re coming from a product background and you’re programmed to value ongoing development and continuous innovation, this already sounds bad. But if you’re from traditional IT management, you might think of redesigns more like purchasing any other technology solution. You buy it, it gets old, you replace it – often with some form of ongoing support between major expenditures. The smaller the support requirement, the more successful the project. Likewise the longer you can go without upgrading, the more successful the project.
The trouble is, your website, app, etc. doesn’t really work that way. Your website shouldn’t just be checking boxes on functionality requirements the way your phone system or workstations do; rather, your website is the public face and voice of your organization. It needs to keep up and tell your story clearly, every day. It needs to evolve as quickly as your organization does. And that requires ongoing investment. More than that, it requires a fundamental shift in the way decision makers think about planning digital projects.
There’s already a ton of fantastic material about the need to adopt a product approach over the more traditional project mindset. One of my favorite posts on the subject was written back in 2015 by the team at Greenpeace titled, “Product teams: The next wave of digital for NGOs?” I especially love this infographic. The illustration is spot on: first, a huge spike in money and time with a brief climax at launch, followed by diminished investment during a prolonged support period with equally diminished satisfaction, all to be repeated over and over again.
Interestingly, this problematic “buy-maintain-replace” cycle actually aligned closely with the release cycle for previous versions of Drupal. For years, timing for the “buy” stage in the cycle aligned surprisingly well with the stable release for major Drupal versions. First, you built a website on Drupal 4. Support phase ensued. Over a few years wish lists turned to gripe lists. Momentum grew behind doing the next major redesign, right on time for the stable release of Drupal 5. Rinse. Drupal 6. Repeat. Drupal 7.
While we were talking more and more about a product approach, the technology actually lent itself to the project mindset. Quick example: retainers are a big part of our business at Aten, and have been important for helping us support clients in the product approach. With retainers, clients invest consistently in their digital platforms over the long term. We identify strategic priorities together, maintain a backlog, organize sprints and deploy iterative releases. But with past versions of Drupal, an organization still needed to invest heavily for major release upgrades. At some point in the cycle, there were diminishing returns associated with ongoing investment in an outdated system. We started prioritizing tasks based on the fact that a large redesign was looming. We said things like, “Let’s just wait on Drupal 7 for that.” In many ways the underlying platform was promoting a “buy-maintain-replace” development cycle. The product approach was still valuable, but hampered by inevitable obsoletion of the technology.
Enter Drupal 8.
With Drupal 8, there’s a lot to be excited about: configuration management, component-based theming, improved performance, content moderation, modernized development tools, support for API-first architecture, and the list goes on. But I want to focus for a minute on Drupal’s release cycle.
Drupal’s vastly improved upgrade path is a huge win for the platform and a major reason organizations should consider migrating to Drupal 8 sooner rather than later.
With past versions of Drupal, major release upgrades (i.e. D6 to D7) required a significant development effort and usually constituted a major technology project. As I’ve touched on already, upgrades would typically coincide with a complete redesign (again, buy-maintain-replace).
With Drupal 8 the release cycle is changing. The short, non-technical version is this: Drupal 8 will eventually become Drupal 9. If you stay up-to-date with underlying changes to the platform as it evolves, upgrading from 8 to 9 should be relatively simple. It’s just another release in your ongoing development cycle.
With Drupal 8, an organization can invest consistently in its digital platform without the problem of diminishing returns. As long as you adopt the product approach, your platform won’t become outdated. And that’s fantastic, because the product approach is what we’re all going for – right?
Resources and Related Reading:
- The product approach to building a website (from atendesigngroup.com)
- Product teams: The next wave of digital for NGOs? (from mobilisationlab.org)
- Drupal 9 and Backwards Compatibility: Why now is the time to upgrade to Drupal 8 (Angie @webchick Byron via slideshare.net)
- Making Drupal upgrades easy forever (from dri.es)
Note: this is a back-end utility module with no user interface. All interaction with the module is currently handled through Drush unless a module referencing this as a dependency adds additional functionality.High Level Overview
JSON Content is intended for importing and exporting (coming later) content while minimizing hurdles related to interrelation of content. All content for import and export is formatted in a JSON structure parallel to the entity value arrays to make extending the data as simple as possible.