Drupal Feeds

Agiledrop.com Blog: AGILEDROP: Drupal Logos representing National Identities

Feeds from Drupal.org - Tue, 2017-03-21 10:23
We are now very deep into our »Druplicon marathon«. After already presenting you Drupal Logos in Human and Superhuman forms, Drupal Logos as Fruits and Vegetables, Druplicons in the shapes of Animals and Drupal Logos taking part in the outdoor activities, it's now time to look at Drupal Logos representing the national identities. A sense of belonging to one nation can be very strong. National identities are therefore also present in various Druplicons. Latter mostly represent active or inactive Drupal Groups from the specific countries. These groups connect Drupalistas from that specific… READ MORE
Categories: Straight From Drupal

MD Systems blog: Drupal 8 security features: Cross site request forgery (XSRF)

Planet Drupal - Tue, 2017-03-21 09:27
Recently, we had to create a security report for one of our clients about their Drupal 8 project. We described how Drupal 8 protects against most common vulnerabilities and added some project specific tests to secure as good as possible that it cannot be attacked. This resulted in a document that we thought is worth to be transferred into a series of blog posts.

MD Systems blog: Drupal 8 security features: Cross site request forgery (XSRF)

Feeds from Drupal.org - Tue, 2017-03-21 09:27
Recently, we had to create a security report for one of our clients about their Drupal 8 project. We described how Drupal 8 protects against most common vulnerabilities and added some project specific tests to secure as good as possible that it cannot be attacked. This resulted in a document that we thought is worth to be transferred into a series of blog posts.
Categories: Straight From Drupal

Admin Theme Change

Latest Drupal Modules - Tue, 2017-03-21 09:01

This module is used to show ANY SELECTED theme based on selective routes/paths and render selected theme for that route/path.
Note : if user has permissions to view SELECTED theme then only theme will be accessible.
Ex: If any authenticated user want to view '/abc' route in admin theme and '/xyz' in CUSTOM theme
this module will help to show selected routes/paths in respective selected theme.

Categories: Straight From Drupal

Web Omelette: Storing user data such as preferences in Drupal 8 using the UserData service

Planet Drupal - Tue, 2017-03-21 08:30

Have you ever needed to persist some irregular data relating with a user account? Things like user preferences or settings that are kinda configuration but not really? Storing them as configuration means having to export them, and that’s no option. Storing them in State is an option, but not a good one as you’d have to maintain a State value map with each of your users and who wants to deal with that…

In Drupal 7, if you remember way back when, we had this data column in the user table which meant that we could add to the $user->data array whatever we wanted and it would get serialised and saved in that column (if we saved the user object). So what is the equivalent of this in Drupal 8?

I’m happy to say we have the exact same thing, but of course much more flexible and properly handled. So not exactly the same. But close. We have the user.data service provided by the User module and the users_data table for storage. So how does this work?

First of all, it’s a service. So whenever we need to work with it, we have to get an instance like so:

/** @var UserDataInterface $userData */ $userData = \Drupal::service('user.data');

Of course, you should inject it wherever possible.

The resulting object (by default) will be UserData which implements UserDataInterface. And using this object we can store as many pieces of data or information for a given user as we want. Let’s explore this a bit to learn more.

The interface has 3 methods or handling data: get(), set(), delete(). But the power comes in the method arguments. This is how we can store some data for User 1:

$userData->set('my_module', 1, 'my_preference', 'this is my preference');

So as you can see, we have 4 arguments:

  • The module name we want this piece of data to be findable by
  • The user ID
  • The name of the piece of data
  • The value of the piece of data

This is very flexible. First, we can have module specific data. No more colluding with other modules for storing user preferences. Stay in your lane. Second, we can have multiple pieces of data per user, per module. And third, the value is automatically serialised for us so we are not restricted to simple strings.

Retrieving data can be done like so:

$data = $userData->get('my_module', 1, 'my_preference');

This will return exactly this is my preference (in our case). And deserialisation also happens automatically if your data got serialised on input.

Deleting data is just as easy:

$userData->delete('my_module', 1, 'my_preference');

Moreover, most of the arguments of the get() and delete() methods are optional. Meaning you can load/delete multiple pieces of data at once. Check out UserDataInterface to see how omitting some arguments can return/delete sets of records rather than individual ones.

And that is pretty much it. And in true Drupal 8 form, there’s nobody stopping you from overriding the service and using your own UserDataInterface implementation that has that little extra something you are missing. So no, you probably don’t have to create that custom table after all.

Web Omelette: Storing user data such as preferences in Drupal 8 using the UserData service

Feeds from Drupal.org - Tue, 2017-03-21 08:30

Have you ever needed to persist some irregular data relating with a user account? Things like user preferences or settings that are kinda configuration but not really? Storing them as configuration means having to export them, and that’s no option. Storing them in State is an option, but not a good one as you’d have to maintain a State value map with each of your users and who wants to deal with that…

In Drupal 7, if you remember way back when, we had this data column in the user table which meant that we could add to the $user->data array whatever we wanted and it would get serialised and saved in that column (if we saved the user object). So what is the equivalent of this in Drupal 8?

I’m happy to say we have the exact same thing, but of course much more flexible and properly handled. So not exactly the same. But close. We have the user.data service provided by the User module and the users_data table for storage. So how does this work?

First of all, it’s a service. So whenever we need to work with it, we have to get an instance like so:

/** @var UserDataInterface $userData */ $userData = \Drupal::service('user.data');

Of course, you should inject it wherever possible.

The resulting object (by default) will be UserData which implements UserDataInterface. And using this object we can store as many pieces of data or information for a given user as we want. Let’s explore this a bit to learn more.

The interface has 3 methods or handling data: get(), set(), delete(). But the power comes in the method arguments. This is how we can store some data for User 1:

$userData->set('my_module', 1, 'my_preference', 'this is my preference');

So as you can see, we have 4 arguments:

  • The module name we want this piece of data to be findable by
  • The user ID
  • The name of the piece of data
  • The value of the piece of data

This is very flexible. First, we can have module specific data. No more colluding with other modules for storing user preferences. Stay in your lane. Second, we can have multiple pieces of data per user, per module. And third, the value is automatically serialised for us so we are not restricted to simple strings.

Retrieving data can be done like so:

$data = $userData->get('my_module', 1, 'my_preference');

This will return exactly this is my preference (in our case). And deserialisation also happens automatically if your data got serialised on input.

Deleting data is just as easy:

$userData->delete('my_module', 1, 'my_preference');

Moreover, most of the arguments of the get() and delete() methods are optional. Meaning you can load/delete multiple pieces of data at once. Check out UserDataInterface to see how omitting some arguments can return/delete sets of records rather than individual ones.

And that is pretty much it. And in true Drupal 8 form, there’s nobody stopping you from overriding the service and using your own UserDataInterface implementation that has that little extra something you are missing. So no, you probably don’t have to create that custom table after all.

Categories: Straight From Drupal

Token Link

Latest Drupal Modules - Tue, 2017-03-21 06:38

This module was created to speed up slow administrative pages, fix memory limit errors, and solve client site javascript timeouts caused by a high number of tokens loading on the initial page request. This module solves these problems by replacing any call to render the entire token tree with a call to render only a link which if clicked will perform a second page request as an overlay.

Categories: Straight From Drupal

PreviousNext: Lifting the Lid on our Containers

Planet Drupal - Tue, 2017-03-21 03:19

We have been running containers in production for more than a year now and want to share some of the lessons learnt, by open sourcing our container suite.

PreviousNext: Lifting the Lid on our Containers

Feeds from Drupal.org - Tue, 2017-03-21 03:19

We have been running containers in production for more than a year now and want to share some of the lessons learnt, by open sourcing our container suite.

Categories: Straight From Drupal

Chart.js Full

Latest Drupal Modules - Mon, 2017-03-20 22:42

This module provides simple Chart.js integration with your Drupal 7 or Drupal 8 (coming soon) site's statistics.

Categories: Straight From Drupal

Shorthand

Latest Drupal Modules - Mon, 2017-03-20 22:03

This module provides integration with Shorthand, an application which describes itself as "beautifully simple storytelling". It connects your Shorthand account with Drupal and allows you to publish your stories on a Drupal website. Create your Shorthand account to get a User ID and API Token (found on the account settings page) which are prerequisite for using this module.

Categories: Straight From Drupal

Drupal Modules: The One Percent: Drupal Modules: The One Percent — Alert to Administrator (video tutorial)

Planet Drupal - Mon, 2017-03-20 22:01
Drupal Modules: The One Percent — Alert to Administrator (video tutorial) Project page screenshot NonProfit Mon, 03/20/2017 - 17:01 Episode 24

Here is where we bring awareness to Drupal modules running on less than 1% of reporting sites. Today we'll take a look at Alert to Administrator, a module which displays an alert every time a user logs in as an administrator.

Drupal Modules: The One Percent: Drupal Modules: The One Percent — Alert to Administrator (video tutorial)

Feeds from Drupal.org - Mon, 2017-03-20 22:01
Drupal Modules: The One Percent — Alert to Administrator (video tutorial) Project page screenshot NonProfit Mon, 03/20/2017 - 17:01 Episode 24

Here is where we bring awareness to Drupal modules running on less than 1% of reporting sites. Today we'll take a look at Alert to Administrator, a module which displays an alert every time a user logs in as an administrator.

Categories: Straight From Drupal

Emergency Alerts

Latest Drupal Modules - Mon, 2017-03-20 21:39
Emergency Alerts

A Drupal 8 module to provide emergency alerts. These are the important announcements you might see at the top of academic sites.

Quickstart

Enable this module and configure to set alert title and message, severity, and to turn on block or full page override.

(optional) Add region emergency_alert to your theme and in templates. For example (in theme.info.yml),

Categories: Straight From Drupal

Test Project 2

Latest Drupal Modules - Mon, 2017-03-20 19:24
Categories: Straight From Drupal

Verbo Guru

Latest Drupal Themes - Mon, 2017-03-20 19:08

I will try get best rank on pagespeed,with the light framework.

Categories: Straight From Drupal

Sun Theme

Latest Drupal Themes - Mon, 2017-03-20 19:07

I will try get best rank on pagespeed,with the light framework.

Categories: Straight From Drupal

thesun

Latest Drupal Themes - Mon, 2017-03-20 19:06

I will try get best rank on pagespeed,with the light framework.

Categories: Straight From Drupal

CrowdRiff

Latest Drupal Modules - Mon, 2017-03-20 17:37
Categories: Straight From Drupal

Sir Trevor

Latest Drupal Modules - Mon, 2017-03-20 15:36

CONTENTS OF THIS FILE
---------------------

* Introduction
* Required modules
* Recommended modules
* Required libraries
* Installation
* Configuration

Introduction

The Sir Trevor module integrates the sir-trevor library in Drupal (http://madebymany.github.io/sir-trevor-js) by
providing a new field.

Required modules

This module requires no Drupal modules

Recommended modules

None at the moment.

Categories: Straight From Drupal

Pages

Subscribe to My Drupal aggregator