Preview Comrax Drupal Template TMT Made Shawn

Posted by Flickr on October 25, 2016 at 8:40am

JameBridges posted a photo:

Preview Comrax Drupal Template TMT Made Shawn

Drupal Templates

Live Preview :
Categories: Drupal
Drupal Compatibility:

Drupal Engine:

Additional Features:
Advanced Theme Options, Sliced PSD, Back To Top Button, Commenting System, Crossbrowser Compatibility, Dropdown Menu, Favicon, Google map, Google Web Fonts, Sample content, Sortable Gallery, Tag Cloud, Tooltips

Additional Info:
Well Documented, Customized Modules

HTML plus JS, Parallax, Lazy Load effect

CSS 3, HTML 5, JQuery, LESS, Valid Coding

Drupal Modules:
Addthis, Administration Menu, Block Class, Colorbox, Ctools, Demo, Dismiss, Flexslider, Hide the Toolbar, jQuery Easing, jQuery Update, Libraries, Module Filter, Panels, Retina Images, Semantic Views, Superfish, Taxonomy Term Reference Tree Widget, Tipsy, Views, Views Isotope - jQuery Isotope, Views Slideshow, WYSIWIG

Blog, Forum, Portfolio

Gallery Script:
Gallery, Isotope, Slider

Installation and set up instructions are attached (look for Documentation folder).

Language support:

Video Integration

Web Forms:
Contact Form


Categories: Drupal talk


Posted by Flickr on October 25, 2016 at 3:16am

quinn.anya posted a photo:


A remnant of BADCamp a few weeks ago.

Categories: Drupal talk

My second BADCamp

Posted by Enzolutions on October 25, 2016 at 12:00am

Last week I had the opportunity of participating in my second BADCamp as part of my tour Around the Drupal world in 140+ days.

My first assistance was in 2012, a lot have changed from that time to now. At that time I was only assistant and was impress for the quality of the event and how vibrant was the community in San Francisco Bay Area.

The event itself doesn't change too much, the same venue, but a little more disperse in my opinion.

What change was my participation with Jesus Manuel Olivas one of my business partners at weKnow. We lead a training about Drupal 8 module development

Slides: []

Also we have a session about how to learn about Drupal 8 via debugging


Airplane Distance (Kilometers) San Jose, Costa Rica → Panama, Panama → San Francisco, USA 5.880 Previously 109.137 Total 115.017 Walking Distance (steps) Bay Area 58.408 Previously 1.936.685 Total 1.995.093 Train Distance (Kilometers) Today 0 Previously 528 Total 528 Bus/Car Distance (Kilometers) Today 796 Previously 2.944 Total 3.740
Categories: Planet Drupal

Highlights From HighEdWeb 2016

Posted by Palantir on October 24, 2016 at 8:23pm
Highlights From HighEdWeb 2016 brandt Mon, 10/24/2016 - 15:23 Allison Manley Oct 24, 2016Pano photo of Memphis river view

HighEdWeb proved to be a valuable experience (again!) and we will be back.

In this post we will cover...
  • What makes HighEdWeb special
  • A few things we learned
  • Some of our favorite sessions

We want to make your project a success.

Let's Chat.

Last week I returned from the HigherEd Web Conference in Memphis, TN. This is one of my favorite conferences because the community is fantastic, the energy is high, the events are well-attended and create an inclusive atmosphere, and it’s just well-run. It’s also a very heavy Twitter user group . . . attendees love to tweet everything early and often, and each session is given its own hashtag so people can follow along. They also have a coveted award called the “Red Stapler” given for best in each track, culminating in a Best Of Conference award.

As if that wasn’t enough, the keynote speakers each year are amazing! This year, Kimberly Bryant of was the first keynote. The community was so supportive of her organization’s work to bring computer science and code to young girls of color that people were donating money on the spot as she spoke, and tweeting it around to encourage others to keep the donations coming.

The final keynote was LeVar Burton. As the son of an educator, a Star Trek: The Next Generation actor, and Reading Rainbow creator, Mr. Burton is perfectly positioned to speak on the intersection of technology and education. He was funny, engaging, and accommodating. Plus he made everyone cry when talking about the important teachers in his life, and asked us to take a moment to reflect on ours. And kudos to the Reading Rainbow social media team, who were impressively following along with his talk and engaging via Twitter with the audience in real time.

This conference is mostly focused on implementers. It’s a conference of editors, designers, developers, admissions, and IT staff. This is a passionate group of people who want to do better by their schools via the school’s online presence, and I’m continually impressed by how creative the teams get within their limited resources (people, time and money). The smaller schools have the ability to be more nimble around internal politics and the lack of resources than larger institutions, but even the larger schools are making amazing things happen online.

Though this isn’t something that Palantir works in directly, schools and libraries are really getting savvy about social media. There were sessions on how schools were using Pinterest, the success around ways to text students (including admissions acceptances!), Snapchat (again . . . including admissions acceptances!), and more.

Schools are really looking about how to personalize and individualize the experience for students from a visual perspective, understanding that the younger generations are used to a personalized experience via Netflix, Spotify, and Amazon where recommendations can be made based on interests. Schools are responding to this by designing more around creating a “choose your own adventure” feel either through filtering majors and interests, or through messaging and branding in addition to social media.

I also learned a lot about the concerns that schools have in the areas of accessibility, crisis control, and rebuilding trust among faculty and administrators when past web projects either haven’t gone well, or due to internal power struggles over which content gets priority.

Between representing all the factions of a large organization, juggling the needs of multiple audiences, and having to keep up with the constantly changing workspace online, these small teams of web professionals have a lot to handle! And this annual meeting allows them to collaborate, learn from each other, compare notes, and celebrate their hard work.

Some Favorite Sessions

In addition to the Red Stapler winners, there were a lot of great sessions. Videos will be up on the schedule page eventually, but below are links to slides to some noteworthy ones:

My colleague Joe Allen-Black and I were able to give our presentation “Project Management: The Musical!” to this crowd as the last session on Monday. We added one more song since the last conference, and thankfully it all went smoothly without a full rehearsal! Considering the amounts of tweets there were related to the session and feedback we received in person, the attendees seemed to enjoy our musical take on how to get a project moving successfully from start to finish.

I learn so much from this conference every year about what the higher education community’s needs are for their online presence, what they are doing to solve those problems, and how we at Palantir can assist. HEW hosts regional conferences all over the country throughout the year, leading up to the big annual conference next October in Hartford, CT. I don’t yet know what my calendar holds for next year, but I look forward to being able to attend and see the great community of HEW often in 2017.

Stay connected with the latest news on web strategy, design, and development.

Sign up for our newsletter.
Categories: Planet Drupal

Responsive Images in Drupal 8 Using "srcset"

Posted by Chromatic on October 24, 2016 at 3:26pm

There are a handful of tutorials out there that explain how to use Drupal 8's responsive image and breakpoint modules. However, from what I could find, none of them address how to instruct Drupal to output simple tags that leverage srcset instead of using the element. Using srcset can be preferable in many circumstances and as such, knowing how to use it in Drupal 8 will be good for most developers to understand. Since I was so confused on how to make this work, I thought it would be worth sharing.

Why srcset over ?

Others have done a much better job explaining the "why" of this approach, namely Chris Coyier and Jason Grigsby. Read those posts for the full picture (heh) but suffice to say, if you're only needing to change the resolution of an image at different viewport sizes/densities, you should use srcset instead of the element. If you need images that vary more specifically (i.e. different croppings, styles, etc.) then you should use the element. The reason srcset is preferred, is that it allows the browser to make informed decisions about which version of the image to serve, whereas the element explicitly tells the browser which images to use and when via media queries. Browsers know way more about our end users than we (developers) can ever know, so why not let them make the hard decisions?

In short:

  • Use srcset for different image sizes/densities across breakpoints.
  • Use when you need separate art direction/crops across breakpoints.
Convincing Drupal to Use srcset

Drupal's UI for responsive images is confusing and (maybe) rightfully so. Responsive images are confusing. As a rule, Drupal tries really hard to not make assumptions about what the user needs. While I understand why we (the Drupal community) built core this way, this can lead to interfaces that even seasoned professionals have a hard time understanding. In this case, it wasn't clear to me how (or if) I could instruct Drupal that I just wanted an element with srcset and sizes, not a full element. Each method I tried produced a element.

Responsive Image Interface

After some digging, I found the core issue where this development and discussion occurred. After skimming that thread and poking around the accepted patch, I knew that what I wanted was possible, but I still couldn't grok how to configure things in Drupal to get the desired output.

Further digging revealed that the default template responsible is called: responsive-image.html.twig. Here is the full file that ships with the Stable base theme:

 * @file
 * Theme override of a responsive image.
 * Available variables:
 * - sources: The attributes of the  tags for this  tag.
 * - img_element: The controlling image, with the fallback image in srcset.
 * - output_image_tag: Whether or not to output an  tag instead of a
 *    tag.
 * @see template_preprocess()
 * @see template_preprocess_responsive_image()
{% if output_image_tag %}
  {{ img_element }}
{% else %}
    {% if sources %}
      Internet Explorer 9 doesn't recognise source elements that are wrapped in
      picture tags. See
      {% for source_attributes in sources %}
      {% endfor %}
    {% endif %}
    {# The controlling image, with the fallback image in srcset. #}
    {{ img_element }}
{% endif %}

The key in this template is the output_image_tag boolean. When true, the template renders an tag instead of the tag. Inline documentation within the responsive_image module's template_preprocess_responsive_image() function explains that this output_image_tag variable is true when:

There is only one source tag with an empty media attribute. This means we can output an image tag with the srcset attribute instead of a picture tag.

In this context, Drupal is basically saying: if the user hasn't setup multiple breakpoints for this style AND there isn't any specific media query attached. Or in other words, the user doesn't want the theme to determine the images served but wants to put that onus on the browser via srcset.


If your use-case is to of the "resolution-switching" variety, here is how you get the desired output (no picture element) within Drupal:

  1. Skip creating specific breakpoints in your theme, they aren't needed with this approach.
  2. Setup your different image styles at admin/config/media/image-styles. Usually something like, Author Small, Author Medium and Author Large.
  3. Create a responsive image style at admin/config/media/responsive-image-style. Make sure the Responsive Image module is enabled first. Screenshot of responsive image style creation interface
  4. Ensure "Responsive Image" is selected for the "Breakpoint group".
  5. Choose a suitable "Fallback image style". Click "Save". The following screen is where the secret sauce is.
  6. Under the "1x Viewport Sizing []" fieldset, Select "Select multiple image styles and use the sizes attribute."
  7. Select each of Image styles you'd like to use.
  8. Adjust the Sizes value as needed. The default here 100vw is hard-coded for a good reason, it's a pretty sane default and works well in most situations. Customize this is you want even finer control. More on Sizes. Screenshot of an example Resposive Image Style
  9. Adjust your content type (or other entity) to use your new responsive image style either by altering the display formatter or handling programmatically. Adjust Entity Screenshot
  10. Verify results!

For a thorough explanation of how all of the bits of the Responsive Image module work, see the documentation at admin/help/responsive_image with the _Help module enabled._

You should see something like this for the output of that image field now (formatted for readability):

Ogden, Utah Panorama

We now have an element with a srcset attribute containing paths to each of our image styles, a sizes attribute and a fallback src attribute which points to our fallback image style.

Now our browser will automatically determine which image to serve up based on the client's viewport size, pixel density, etc. Also, if the client's browser doesn't yet support srcset, it will simply fall back to the value set in the src attribute.

Screencast demonstration of responsive images loading as the viewport changes.

Armed with this knowledge, you can configure your Drupal sites to leverage the power of srcset and allow the browsers of the world to do the hard work of determining which image style to serve to your users.

Categories: Planet Drupal

Drupal Board Staff Mixer

Posted by Unimity Solutions Drupal Blog on October 24, 2016 at 11:28am

During our Board Retreat, the Staff Board mixer gave us a chance to meet the staff members and the staff members to meet the Board. The staff's commitment and involvement to the project is amazing and definitely needs a pat on the back!

Categories: Planet Drupal

Upload PDF, Excel, Word Files to Drupal Content

Posted by OSTraining on October 24, 2016 at 10:17am
Upload PDF, Excel, Word Files to Drupal Content

An OSTraining member asked how he could attach files such as PDFs, Excel Documents, Word Documents to his content. 

There are many ways to do this in Drupal, but the easiest approach is to use the "File" field.

  • Login to your Drupal site.
  • Go to Structure > Content types.
  • You either add the field to an existing content type, or you can create a new one for specifically adding the files:
Categories: Planet Drupal

Drupal SearchAPI and result grouping

Posted by Liip on October 24, 2016 at 7:17am

In this blog post I will present how, in a recent e-Commerce project built on top of Drupal7 (the former version of the Drupal CMS), we make Drupal7, SearchAPI and Commerce play together to efficiently retrieve grouped results from Solr in SearchAPI, with no indexed data duplication.

We used the SearchAPI and the FacetAPI modules to build a search index for products, so far so good: available products and product-variations can be searched and filtered also by using a set of pre-defined facets. In a subsequent request, a new need arose from our project owner: provide a list of products where the results should include, in addition to the product details, a picture of one of the available product variations, while keep the ability to apply facets on products for the listing. Furthermore, the product variation picture displayed in the list must also match the filter applied by the user: this with the aim of not confusing users, and to provide a better user experience.

An example use case here is simple: allow users to get the list of available products and be able to filter them by the color/size/etc field of the available product variations, while displaying a picture of the available variations, and not a sample picture.

For the sake of simplicity and consistency with Drupal’s Commerce module terminology, I will use the term “Product” to refer to any product-variation, while the term “Model” will be used to refer to a product.

Solr Result Grouping

We decided to use Solr (the well-known, fast and efficient search engine built on top of the Apache Lucene library) as the backend of the eCommerce platform: the reason lies not only in its full-text search features, but also in the possibility to build a fast retrieval system for the huge number of products we were expecting to be available online.

To solve the request about the display of product models, facets and available products, I intended to use the feature offered by Solr called Result-Grouping as it seemed to be suitable for our case: Solr is able to return just a subset of results by grouping them given an “single value” field (previously indexed, of course). The Facets can then be configured to be computed from: the grouped set of results, the ungrouped items or just from the first result of each group.

Such handy feature of Solr can be used in combination with the SearchAPI module by installing the SearchAPI Grouping module. The module allows to return results grouped by a single-valued field, while keeping the building process of the facets on all the results matched by the query, this behavior is configurable.

That allowed us to:

  • group the available products by the referenced model and return just one model;
  • compute the attribute’s facets on the entire collection of available products;
  • reuse the data in the product index for multiple views based on different grouping settings.
Result Grouping in SearchAPI

Due to some limitations of the SearchAPI module and its query building components, such plan was not doable with the current configuration as it would require us to create a copy of the product index just to apply the specific Result Grouping feature for each view.

The reason is that the features implemented by the SearchAPI Grouping are implemented on top of the “Alterations and Processors” functions of SearchAPI. Those are a set of specific functions that can be configured and invoked both at indexing-time and at querying-time by the SearchAPI module. In particular Alterations allows to programmatically alter the contents sent to the underlying index, while the Processors code is executed when a search query is built, executed and the results returned.
Those functions can be defined and configured only per-index.

As visible in the following picture, the SearchAPI Grouping module configuration could be done solely in the Index configuration, but not per-query.

 processor settings

Image 1: SearchAPI configuration for the Grouping Processor.

As the SearchAPI Grouping module is implemented as a SearchAPI Processor (as it needs to be able to alter the query sent to Solr and to handle the returned results), it would force us to create a new index for each different configuration of the result grouping.

Such limitation requires to introduce a lot of (useless) data duplication in the index, with a consequent decrease of performance when products are saved and later indexed in multiple indexes.
In particular, the duplication is more evident as the changes performed by the Processor are merely an alteration of:

  1. the query sent to Solr;
  2. the handling of the raw data returned by Solr.

This shows that there would be no need to index multiple times the same data.

Since the the possibility to define per-query processor sounded really promising and such feature could be used extensively in the same project, a new module has been implemented and published on the SearchAPI Extended Processors module. (thanks to SearchAPI’s maintainer, DrunkenMonkey, for the help and review :) ).

The Drupal SearchAPI Extended Processor

The new module allows to extend the standard SearchAPI behavior for Processors and lets admins configure the execution of SearchAPI Processors per query and not only per-index.

By using the new module, any index can now be used with multiple and different Processors configurations, no new indexes are needed, thus avoiding data duplication.

The new configuration is exposed, as visible in the following picture, while editing a SearchAPI view under “Advanced > Query options”.
The SearchAPI processors can be altered and re-defined for the given view, a checkbox allows to completely override the current index setting rather than providing additional processors.

 view's extended processor settings

Image 2: View’s “Query options” with the SearchAPI Extended Processors module.


Conclusion: the new SearchAPI Extended Processors module has now been used for a few months in a complex eCommerce project at Liip and allowed us to easily implement new search features without the need to create multiple and separated indexes.
We are able to index Products data in one single (and compact) Solr index, and use it with different grouping strategies to build both product listings, model listings and model-category navigation pages without duplicating any data.
Since all those listings leverages the Solr FilterQuery query parameter to filter the correct set of products to be displayed, Solr can make use of its internal set of caches and specifically the filterCache to speed up subsequent searches and facets. This aspect, in addition to the usage of only one index, allows caches to be shared among multiple listings, and that would not be possible if separate indexes were used.

For further information, questions or curiosity drop me a line, I will be happy to help you configuring Drupal SearchAPI and Solr for your needs.

Categories: Planet Drupal

Should I build a career on Drupal?

Posted by TheodorosPloumis blog on October 22, 2016 at 9:14pm

An IT university student asked me one week before in a developer meetup here in Thessaloniki - Greece:

"Senior developers say to never count on a CMS to build a career. I have heard that Drupal 8.x is more mature than ever but how risky it is to spend my time on a hard to learn CMS in order to make a living? What is your advise as a Drupal developer?"

First of all I would like to say that it is a very hard question. If you are already using Drupal the answer may be obvious but here we are talking about a young person studying IT, who doesn’t have any real experience on any CMS, and would be afraid to rely on a specific CMS. This is expected and totally fine.

Secondly, in order to be more objective I should compare Drupal with the other similar software out there like WordPress, Joomla, SiteCore, SquareSpace, Adobe AEM etc. Or, to be honest I should compare Drupal with other the alternative frameworks like Laravel, Django, Ruby on Rails etc. Since I do not have a personal experience of all the above "competitors" I will talk only about Drupal. So it's up to you, the young IT Student to investigate if similar software out there can offer what Drupal offers and how much does it cost to focus or not to Drupal.

Thirdly I would say that I make a living from Drupal for the last 8 years now as a freelancer. I work from home and I work 100% on Drupal projects.

So, here is why Drupal is a very good path to follow in order to build a long time career.


Open Source:

This may be a "hidden" advantage of Drupal but notice this: with Drupal you and your customers will never stand behind a company, a commercial license or a company strategic. Behind Drupal there are thousand of people and this is your stable ground to step. Behind any commercial software there is a company. Drupal is open source and will stay as that for ever. Remember that.


Ready for tomorrow:

Drupal is not a "static" code CMS, outdated and heavy. Drupal is always "regenerated" and stays on the edge of the technology. Current version of 8.x is built with Backbone.js, RESTful services, In Place Editor, Symfony2, Twig, CKeditor and many other things that are game-changers. It's UX is always improved. You may have difficulties to get started and the learning curve will not be easy. But it worths the effort. Drupal is a CMS that never stagnates.


Career Evolution:

Using and building experiences with Drupal is challenging. On every release you are almost forced to learn new things. That's because Drupal tries to get better and better over time even after 15 years of existence. For Drupal 8.x for example you may need to learn to use Composer, Object Oriented patterns, RESTful APIs, Symfony services and many other interesting things which were not in Drupal 7.x. Nowadays Drupal is adding new stuff in its core even on minor releases of 8.x. I can really promise, "you will never get borrowed with DrupalTM".


Companies are investing:

Huge, medium and small companies investing to Drupal. IT companies and advertisement agencies are moving to Drupal as their preferable tool to create websites or other apps. Big corporations, organizations, governments, institutes etc are using Drupal or planning to use Drupal to build their web presence. In terms of the open source CMS Drupal is by far a leader when there are security, flexibility and long term maintenance requirements. Especially for Drupal 8.x we are going to see even more "big" players to investigate on Drupal and migrate from other CMS - even paid -. Drupal creates new market opportunities and that's why demand for Drupal talent is great​.


Drupal Community:

Drupal is very proud of its' incredibly unique community. The motto of Drupal is "Come for the Code, Stay for the Community". It is the key for success of the software. The website, the unified and fully open online place where Drupal lives, is full of helpful information, extensions, themes, documentation and thousands of humans ready to help you find your way. People are giving back to Drupal and this is a win win situation. I could say so many about Drupal community and how it works but you should better see on your self.


Drupal Association:

Behind (or in front of) Drupal there is the Drupal Association, a passionate group of people elected from the community and working for the community. The Drupal Association is dedicated to fostering and supporting the Drupal software project, the community and its growth (funding, infrastructure, education, promotion, distribution, online collaboration etc). So behind the community there is the same community trying to help the community! Probably the larger online community of an open source software.



I could not avoid refer to the founder of Drupal. Dries is one of us, a humble community member, an open mind businessman, a lead developer, a Drupal evangelist, a restless leader. His thoughts are really inspiring and you feel safe when you listen him talking about the mission and strategic of Drupal.


After all these I hope you get the idea.

Good luck with your professional (Drupal) career ;-)


Further reading.

Categories: Planet Drupal

Conductor, a Composer UI

Posted by Matt Glaman on October 22, 2016 at 1:30pm

Developers have many tools. We have version control systems, we have dependency management tools, we have build and task automation tools. What is one thing they all have in common? They are command line tools.

However, the command line can be daunting to some and create a barrier to adoption. We’re currently experiencing this in the Drupal community. People are considering Composer a barrier to entry, and I believe it’s just because it’s a command line tool and something new.

Providing a user interface

User interfaces can make tools more usable. Or at least lower the barrier to entry. I like to think of Atlassian's SourceTree. SourceTree is an amazing Git user interface and was my entry into learning how to use Git.

If you work with Java, your IDE provides some sort of user interface for managing your dependencies via Maven.

The PhpStorm IDE provides rudimentary Composer support - initializing a project and adding dependencies - but doesn’t support entire workflows. It’s also proprietary.

Here’s where I introduce Conductor: a standalone Composer user interface built on Electron. The purpose of Conductor is to give users working with PHP projects an interface for managing their projects outside of the command line.

Hello, Conductor

Conductor interfaces

Conductor provides an interface for:

  • Creating a new project based on a Composer project
  • Managing projects to install, update, add, and remove dependencies
  • View dependencies inside of a project
  • Ability to update or remove individual dependencies by reviewing them inside of the project.
  • Run Composer commands from the user interface and review console output.

The project is in initial development, granted by the downtime the Dyn DDoS attack created.

The initial application is now in an above minimal viable product. It works. It can be used. But now it needs feedback from users who feel a barrier by having to use Composer, and code improvements as well.

Head over to GitHub and check out the project: Currently, there are no prebuilt binaries and you'll need to manually build to try it out.

Categories: Planet Drupal's Guide to Digital Governance: Roles and Permissions

Posted by Palantir on October 21, 2016 at 7:17pm's Guide to Digital Governance: Roles and Permissions's Guide to Digital Governance brandt Fri, 10/21/2016 - 14:17 Scott DiPerna Oct 24, 2016Illustrated collage of website icons

This is the fifth installment of’s Guide to Digital Governance, a comprehensive guide intended to help get you started when developing a governance plan for your institution’s digital communications.

In this post we will cover...
  • Why defining roles and permissions is important
  • Some common roles and associated permissions
  • Questions you should consider when defining permissions for your organization

We want to make your project a success.

Let's Chat.

We live in an era where few institutions have Websites and other Internet-based properties that are managed and maintained by one or only a few people. Where these spaces were once controlled by the few who knew how to code in HTML, content management systems have now dramatically lowered (and arguably eliminated) the need to possess extensive HTML knowledge. This means that most organizations have lots of people editing their Web properties, and without some well-defined rules for all those cooks in the kitchen, things get messy quickly.

Whether or not the platform you are using has roles and permissions built into it, a good governance plan will define roles for users and then apply specific permissions to those roles. Based on my experience, here are some common, fairly generic, roles and permissions that many Websites have (or have variations):

  • ROLE: Authenticated User
    • PERMISSIONS: Anyone who has activated an account on the Website, but has no editing or publishing permissions; authenticated users may be able to see content an un-authenticated user may not see.
  • ROLE: Contributor
    • PERMISSIONS: A user with an account who can create new and edit their existing content on the Website, but may not publish or delete any content, including their own, or edit content they have not created.
  • ROLE: Editor
    • PERMISSIONS: A user with an account who can create new and edit existing content on the Website, including content that is not their own; they may or may not publish or delete content.
  • ROLE: Publisher
    • PERMISSIONS: A user with an account who can create new, edit existing, publish, and delete any content on the Website; typically a person who approves and publishes the work of Contributors and Editors.
  • ROLE: Administrator
    • PERMISSIONS: A user with the same permissions as a Publisher, however they may administer accounts, roles, and permissions of other users on the Website, along with managing certain site-wide settings.
  • ROLE: Webmaster
    • PERMISSIONS: A user with full permissions to all aspects of managing and administering the Website, a role typically reserved to the few, most highly trained and experienced users.

These common roles can be modified easily to address the specific needs of your organization. You may also find that they are lacking certain roles you need, in which case I recommend using one of these for the basis of a new role you create to meet your specific requirements. For example, let’s say you have a microsite that is a subset of your main site, and you need to assign a user the role of Administrator ONLY for that micro-site and not the entire main site. Simply take the permissions assigned to Administrators and create a new role call Micro-Site Admin whose permissions as “Administrator” are limited to only the micro-site that role manages.

Here are some questions to consider to help you begin defining the roles your organization will need, along with the permissions each role should have.


  • Who should have an account for accessing your Website?
  • How do users acquire or activate accounts?
  • What are the policies for using accounts?
  • Is sharing an account permissible?
  • What are the conditions under which users may lose their access privileges?

Roles & Permissions

  • Who is permitted to edit content on the Website?
  • Who is permitted to create new content on the Website?
  • Who is permitted to publish content on the Website?
  • Who is permitted to delete content on the Website?
  • Who is permitted to see unpublished content on the Website?
  • Are there users who should have higher levels of administrative access to perform site-wide changes or to administer user accounts?
  • Are there sets of users who need special access to only limited parts or functions within the Website?
  • Are there limitations to the level of access different users should have?
  • Do all users have access to all content?
  • Do some users have access to only the content they create?
  • Do certain users need to approve content before it is published?
  • Does a workflow need to be established for defining how content is produced and published?


This post is part of a larger series of posts, which make up a Guide to Digital Governance Planning. The sections follow a specific order intended to help you start at a high-level of thinking and then focus on greater and greater levels of detail. The sections of the guide are as follows:

  1. Starting at the 10,000ft View – Define the digital ecosystem your governance planning will encompass.
  2. Properties and Platforms – Define all the sites, applications and tools that live in your digital ecosystem.
  3. Ownership – Consider who ultimately owns and is responsible for each site, application and tool.
  4. Intended Use – Establish the fundamental purpose for the use of each site, application and tool.
  5. Roles and Permissions – Define who should be able to do what in each system.
  6. Content – Understand how ownership and permissions should apply to content.
  7. Organization – Establish how the content in your digital properties should be organized and structured.
  8. URLs – Define how URL patterns should be structured in your websites.
  9. Design – Determine who owns and is responsible for the many aspects design plays in digital communications and properties.
  10. Personal Websites – Consider the relationship your organization should have with personal websites of members of your organization.
  11. Private Websites, Intranets and Portals – Determine the policies that should govern site which are not available to the public.
  12. Web-Based Applications – Consider use and ownership of web-based tools and applications.
  13. E-Commerce – Determine the role of e-commerce in your website.
  14. Broadcast Email – Establish guidelines for the use of broadcast email to constituents and customers.
  15. Social Media – Set standards for the establishment and use of social media tools within the organization.
  16. Digital Communications Governance – Keep the guidelines you create updated and relevant.

Stay connected with the latest news on web strategy, design, and development.

Sign up for our newsletter.
Categories: Planet Drupal

Add date pop-up calendar in custom drupal 7 form

Posted by Phponwebsites on October 21, 2016 at 6:48pm
     This blog describes how to add date pop-up calender to a custom form in the Drupal 7.

Use date pop-up calendar in custom form - drupal 7

     The use case is if you want to use date pop-up calendar in a custom form, then how you can do it in the drupal 7. Actually, the drupal 7 form API provides lots of form types like textfield, checkbox, checkboxes etc to create a custom form. Similarly, the date module  also provides the form type called date_popup. We can use it in the custom form in order to display the date pop-up in the custom form.

Use date pop-up calendar with the custom form in drupal 7:

   Let consider the below code snippet:

function phponwebsites_menu() {
  $items = array();

  $items['customform'] = array(
    'title' => t('Custom Form'),
    'type' => MENU_CALLBACK,
    'page callback' => 'drupal_get_form',
    'page arguments' => array('phponwebsites_display_date_popup_form'),
    'access callback' => TRUE,

  return $items;

function phponwebsites_display_date_popup_form($form, &$form_state) {
  $form['date'] = array(
    '#type' => 'date_popup',
    '#default_value' => date('Y-m-d'),
    '#date_format'   => 'Y-m-d',
    '#date_year_range' => '0:+5',
    '#datepicker_options' => array('minDate' => 0, 'maxDate' => 0),

  return $form;
      '#date_format'   => 'Y-m-d' if you need to display only date
      '#date_format'   => 'Y-m-d H:i:s' if you need to display date & time
      '#date_year_range' => '0:+5' if you need to display only future 5 years
      '#datepicker_options' => array('minDate' => 0, 'maxDate' => 0) if you want to display only current date. We can hide the future & past dates using this option.

   Please add the above code into your module file and look into the "customform" page. It looks like the below image:

Display only current date in date -pop-up - drupal 7

   Now I've hope you know how to add date pop-up calendar with custom form in the drupal 7.

Related articles:
Remove speical characters from URL alias using pathauto module in Drupal 7
Add new menu item into already created menu in Drupal 7
Add class into menu item in Drupal 7
Create menu tab programmatically in Drupal 7
Add custom fields to search api index in Drupal 7
Clear views cache when insert, update and delete a node in Drupal 7
Create a page without header and footer in Drupal 7
Login using both email and username in Drupal 7
Disable future dates in date pop-up calendar Drupal 7
Categories: Planet Drupal

DrupalCon showcase: a very British migration

Posted by - Thoughts on October 21, 2016 at 3:44pm

The Ixis team were out in force, exhibiting as a gold sponsor (along with a small army of Druplicon stress-balls) As well as meeting lots of other Drupal developers and businesses deploying open source infrastructure, one of the highlights of the convention was our Technical Director, Mike Carter, being given the opportunity to co-present a Drupal Showcase session, detailing our work with the British Council.

Categories: Planet Drupal

Nasdaq Chooses Drupal 8

Posted by blog on October 21, 2016 at 12:47pm

Republished from

Nasdaq chooses Drupal 8

I wanted to share the exciting news that Nasdaq Corporate Solutions has selected Drupal 8 as the basis for its next generation Investor Relations Website Platform. About 3,000 of the largest companies in the world use Nasdaq's Corporate Solutions for their investor relations websites. This includes 78 of the Nasdaq 100 Index companies and 63% of the Fortune 500 companies.

What is an IR website? It's a website where public companies share their most sensitive and critical news and information with their shareholders, institutional investors, the media and analysts. This includes everything from financial results to regulatory filings, press releases, and other company news. Examples of IR websites include http://investor.starbucks.com and -- all three companies are listed on Nasdaq.

All IR websites are subject to strict compliance standards, and security and reliability are very important. Nasdaq's use of Drupal 8 is a fantastic testament for Drupal and Open Source. It will raise awareness about Drupal across financial institutions worldwide.

In their announcement, Nasdaq explained that all the publicly listed companies on Nasdaq are eligible to upgrade their sites to the next-gen model "beginning in 2017 using a variety of redesign options, all of which leverage Acquia and the Drupal 8 open source enterprise web content management (WCM) system."

It's exciting that 3,000 of the largest companies in the world, like Starbucks, Apple, Amazon, Google and ExxonMobil, are now eligible to start using Drupal 8 for some of their most critical websites. 

Categories: Planet Drupal

Fully Responsive Web Design

Posted by Flickr on October 21, 2016 at 1:37am posted a photo:

Fully Responsive Web Design

Multilingual and Fully Responsive Websites.
. | Web Design, Web Development, Graphic Design, SEO, Social Media Marketing, WordPress, Joomla, PHP, Drupal, ecommerce Websites, CMS & LMS Website Design and Development, RTL Ready, Video Production

Categories: Drupal talk


Posted by Flickr on October 21, 2016 at 1:37am posted a photo:


Multilingual and Fully Responsive Website Designed & Developed by Ruby Stag.
. | Web Design, Web Development, Graphic Design, SEO, Social Media Marketing, WordPress, Joomla, PHP, Drupal, ecommerce Websites, CMS & LMS Website Design and Development, RTL Ready, Video Production

Categories: Drupal talk

Posted by Flickr on October 21, 2016 at 1:37am posted a photo:

RTL & Fully Responsive Website, Developed by Ruby Stag.
. | Web Design, Web Development, Graphic Design, SEO, Social Media Marketing, WordPress, Joomla, PHP, Drupal, ecommerce Websites, CMS & LMS Website Design and Development, RTL Ready, Video Production

Categories: Drupal talk

Posted by Flickr on October 21, 2016 at 1:37am posted a photo:

RTL & Fully Responsive Website, Developed by Ruby Stag.
. | Web Design, Web Development, Graphic Design, SEO, Social Media Marketing, WordPress, Joomla, PHP, Drupal, ecommerce Websites, CMS & LMS Website Design and Development, RTL Ready, Video Production

Categories: Drupal talk

Posted by Flickr on October 21, 2016 at 1:37am posted a photo:

Multilingual and Fully Responsive Website Designed & Developed by Ruby Stag. (COMING SOON)
. | Web Design, Web Development, Graphic Design, SEO, Social Media Marketing, WordPress, Joomla, PHP, Drupal, ecommerce Websites, CMS & LMS Website Design and Development, RTL Ready, Video Production

Categories: Drupal talk

Posted by Flickr on October 21, 2016 at 1:37am posted a photo:

Multilingual and Fully Responsive Website Designed & Developed by Ruby Stag. (COMING SOON)
. | Web Design, Web Development, Graphic Design, SEO, Social Media Marketing, WordPress, Joomla, PHP, Drupal, ecommerce Websites, CMS & LMS Website Design and Development, RTL Ready, Video Production

Categories: Drupal talk


Subscribe with RSS Subscribe to aggregator