Skip to Content

Drupal

Coverflow

New Drupal Modules - 15 April 2015 - 6:48am
Categories: Drupal

Wellnet Blog: Weekly Module Review - #7 Fast Permissions Administration, insert permissions without issues!

Planet Drupal - 15 April 2015 - 6:03am

This week we’ll talk about FPA (Fast Permissions Administration), a very cute module I only discovered recently.

Categories: Drupal

Code Karate: Installing and configuring a Drupal 7 Sub-theme - 3 of 3

Planet Drupal - 15 April 2015 - 4:44am
Episode Number: 202

In the final video of the 3 part series, we look at creating and configuring a Drupal sub-theme. Specifically, we will be created a sub-theme based off of the Zen theme. If you aren’t familiar with Zen, it is a very popular base theme used by thousands of designers as a starting point when building a custom website theme.

Tags: DrupalDrupal 7Theme DevelopmentDrupal Planet
Categories: Drupal

InternetDevels: Drupal for dummies: where and when is Drupal the Best Option?

Planet Drupal - 15 April 2015 - 3:21am

Let us give the floor to Jack Dawson, founder of Big Drop Inc. He shared his thoughts and ideas about Drupal with the readers of our blog.

Drupal is an open source CMS (content management system), which means that its block of code is available for extension and modification by anyone with programming knowledge. This is as opposed to close source/proprietary software, whose creators retain its IP rights. Open source software does not come with any fees, and it is fully modifiable to fit any user requirements.

Read more
Categories: Drupal

Simple Background image formatter

New Drupal Modules - 15 April 2015 - 2:02am

This module provides an image formatter that allows you to display the image in a div as background image.
The module extends Drupal's images field. Because settings are attached to the entity, it's very easy to setup and manage.

Features

1. No module dependencies (Other that image).
2. Works with Drupal's field UI.
3. Works with Views.
4. Integrates with Drupal's image styles.
5. Offers 2 modes. (Inline Style & CSS Selector)

Categories: Drupal

Free Energy Media: Simple REST API SMS App Integration with Telecom Provider

Planet Drupal - 15 April 2015 - 1:34am

I have been building apps recently that integrate a REST API which subscribes users to a Drupal web app via SMS, they are simultaneously subscribed in the telecom operators database. Conditions must be checked to keep the users status in sync with Drupal and the operator. Other conditions that I won’t cover here include recurring billing or the free trial period.

This is a practical example of how using the REST protocol allows technologies that are completely different to communicate with each other. The technologies in our stack include SMS, mobile billing and a Drupal web app.

First create the URL endpoint by using hook_menu

function my_module_menu() {
$items['my_url/send'] = array(
'title' => 'send',
'page callback' => 'my_module_send_page',
'access callback' => TRUE
);
return $items;
}

When a mobile originated text message “MO” is sent from the customer handset to the shortcode created for our app, a relay message is sent from the telecom integrator’s API and hits the endpoint created with hook_menu on our web app. We then use a GET request to get the values from the values posted to our endpoint url. Parameters include product identification information, partner ID, customer MSISDN and subscription method, as well as other info. We also run an additional API call to check if the MSISDN/phone number is valid and if there is enough money on the customer account.

Here we have the beginning of the callback function that runs when our endpoint is hit.

function my_module_send_page() {

if (isset($_GET['Origin'])) {
$mobile = $_GET['Origin'];
$PricePointId = $_GET['PricePointId'];
$prodId = $_GET['ProductId'];
$mtmo = time() . 'MO';

There are many conditions in the business requirements, which determine different messages in the $text variable to the customer. Success/failure, weekly/monthly, arabic/english, below is the case if success and weekly PricePointId is selected. There is also a check for what language is selected, here we use the language value in the user object, we get this from what language the user selects on the registration form. We then pass back the correct language in the $text variable in a post request using CURL with everything else. Here is some more of the callback function.

if ($PricePointId == XXXXXX) {
if($user->language == 'en') {
$text = 'You have successfully subscribed
}
else {
$text = 'تمّ إشتراكك بملهمتي بنجاح بسعر ‘
}
}

$data2 = array(
'Password' => 'test',
'ProductId' => $prodId,
'PricePointId' => $PricePointId,
'SenderId' => 92235,
'OpId' => XXX,
'Destination' => $mobile,
'Text' => $text,
'ExtTxId' => $mtmo,
);

$qry_str = drupal_http_build_query($data2);
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, 'http://integrator-api-endpoint/sendMT?' . (string) $qry_str);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
curl_close($ch);

Here we get the result from the CURL post to the telecom API.
If the result is greater than one that is success, so we create the user in Drupal and we send a custom email using drupal_mail().

if($result > 0) {
$obj->field_product = $prodId;
$obj->save(); */
$smart_db->changeUserRoles($user->uid , 'subscribe');
$smart_db->changeplan($user->uid, $prodId, $free = TRUE);
$to=$user->mail;
drupal_mail('user', 'register_no_approval_required', $to, user_preferred_language($user, $default = NULL), array('account' => $user), variable_get('site_mail', ''));
}
}

Categories: Drupal

Vardot: 8 Reasons to Get Excited About Drupal 8

Planet Drupal - 15 April 2015 - 12:25am
News

As the last barriers to Drupal 8's launch dwindle, 2015 is shaping up to be a good year for the Drupal community. And though its release date isn't confirmed yet, let's take a look at 8 reasons why Drupal developers and anyone who is looking for an improved experience with their website should be excited for the impending arrival of Drupal 8:

1. Drupal 8 is Mobile First: Mobile websites and apps are the new reality, and so for the first time Drupal is addressing this comprehensively; all built-in themes in Drupal 8 are responsive, making it easier to administer on a mobile device. 

2. Drupal 8 Enhances Multilingual Support: Programming languages aren't constrained by geopolitical boundaries, but traditional "human" languages are, creating barriers between developers and users; with Drupal 8, an emphasis on improved multilingual and globalization support has been prioritized to deliver improved web experiences for both users and developers. There are improvements to language maintenance options, site translations and easier-to-customize settings. This bodes well for developers and site users everywhere.

3. Drupal 8 Utilizes the Symfony2 Framework: Drupal 8 has become more object-oriented by utilizing the Symfony2 framework, taking advantage of a stack of standard components used throughout a variety of frameworks; this makes it easier for new developers to learn Drupal and begin building powerful digital products in less time.

4. Drupal 8 Uses Twig: Drupal 8 is also making use of "Twig," an agile and secure template engine for PHP. Twig has been tailored to run smoothly together with Symfony's class-based approach to programming, and it provides a greater separation between logic and display. This also helps boost security, since PHP can no longer be embedded directly in templates. And just like Symfony2, Twig removes barriers to entry for front-end developers new to Drupal, adopting a syntax that should be familiar to developers with experience with Handlebars or other similar systems.

5. Drupal 8 Makes Content Creation Easy: Drupal 8 uses the common WYSIWYG editor (a.k.a What You See is What You Get). This means the process of content creation, from formatting to editing, has been designed to be more user-friendly. Personalization of content is improved by drag and drop buttons that include images with captions, and the editor toolbar is customizable, allowing content authors to add or remove editing buttons based on what they use most. HTML tags will automatically update as well.

6. Improved Configuration Management: Drupal 8 comes with a file system-based configuration management system, which makes it simple to transport configuration changes such as new content types, fields, or views from development to production. It also lets you use version control for your configuration, so you can keep your configured data in files, separate from production data in the database. 

7. Drupal 8 Won't be Wordpress: Despite being considered the most sophisticated CMS out of the 'Big Three' (the other two being Wordpress and Joomla), in recent years Drupal has failed to compete with Wordpress for overall market share. There's a variety of reasons for this, chiefly being Wordpress is less sophisticated and therefore easier to develop. Drupal 8 won't be a watered-down CMS attempting to pander to a wider audience of developers and clients. Drupal 8 will include features like Symfony2 and Twig that should lessen the learning-curve for developers—resulting in growth in the ranks of Drupal developers—but without sacrificing its core capabilities. 

8. Drupal 8 Will be Better for Clients: With Drupal 8, the combination of user-friendly content authoring, multilingual support, and smooth interface features will make using Drupal-built sites easier than ever before, and improved back-end features will mean Drupal will be far more attractive to novice developers. This means it will be cheaper to build website as the Drupal community grows, and that clients will be receiving far more dynamic web solutions than their budgets could've gotten them previously.

So who is going to benefit from Drupal 8? Well, in theory everyone. Without sacrificing the complex architecture that sets it apart from other open source platforms, Drupal 8 should improve both user and developer accessibility, and it does both without becoming more proprietary. And best of all, skilled Drupal development  teams like Vardot—who already build dynamic applications using Drupal 7—will have enhanced tools with which to continue creating beautiful web solutions; and that alone should give anyone who is looking for improved web and mobile experience a 9th reason to be excited for Drupal 8's impending release.

Tags:  Drupal 8 Drupal Development Drupal Planet Title:  8 Reasons to Get Excited About Drupal 8
Categories: Drupal

aGov IPS

New Drupal Modules - 15 April 2015 - 12:03am

This module provides a way to publish Australian Government Information Publication Scheme documents.

The Information Publication Scheme (IPS) applies to Australian Government agencies that are subject to the Freedom of Information Act 1982 (FOI Act

Further details on IPS is available at the Office of the Information Commissioner site: http://www.oaic.gov.au/freedom-of-information/freedom-of-information-act...

Categories: Drupal

Config

New Drupal Modules - 14 April 2015 - 11:34pm

Config provides a basic API for providing configuration from files (PHP, JSON, YAML) for Drupal 7.

Config is unlikely to get a release for 8.x.

Categories: Drupal

aGov Password Policy

New Drupal Modules - 14 April 2015 - 10:31pm

This module provides Australian Government DSD Policies for use with the Password Policy module.

If provides two different policy profiles:

- Australian Government ISM Policy (Strong)
- Australian Government ISM Policy (Weak)

See the ISM – Information Security Manual for further details on the policies: http://www.asd.gov.au/infosec/ism/

Categories: Drupal

aGov Appearance

New Drupal Modules - 14 April 2015 - 9:51pm

This lightweight module provides an additional permission 'Administer theme settings' to allow finer grained control over which roles can change theme settings.

Part of the aGov suite of modules.

Categories: Drupal

aGov Text Resize

New Drupal Modules - 14 April 2015 - 8:57pm

This is a simple module that provides buttons to increase or decrease font sizes. It does this by adding a .font-large class to the <body> element.

You simply need to add the aGov text resize block to a region in your theme (e.g. header) and then write CSS rules in your themes stylesheet to handle body.font-large.

This module doesn't include any styles, as this will vary from theme to theme.

Part of the aGov suite of modules.

Categories: Drupal

Steindom LLC: Creating a LESS-based Bootstrap subtheme

Planet Drupal - 14 April 2015 - 7:10pm

I've been a long-time Omega themer (and I especially love Omega 4), but outside of Drupal I always use Bootstrap as a starting point for styling a site. The Bootstrap theme has come a long way since I last evaluated it, so I gave it another try recently. It was tricky to set up a subtheme, so I'm sharing my steps here.

I found some clues from this article, but refined the process a bit.

Download the Bootstrap base theme

There hasn't been a stable release of the Bootstrap theme recently (as of the time of this writing), so I grabbed the latest DEV which contains lots of bug fixes and extends Bootstrap theming support into more nooks and crannies of Drupal's interface. If you have drush:

drush dl bootstrap-7.x-3.x-dev Create your sub-theme

You could do this the hard way, by copying the "starterkits/less" folder out of the bootstrap theme folder into your own space (e.g., "sites/default/themes", renaming "less" to something like "bootstrap_subtheme"). Or, just use drush:

drush cc drush
drush dl bootstrap-wizard

(Choose to make it a sub-theme of Bootstrap, using the LESS starterkit.)

Install Bootstrap library source code

Since we're compiling the CSS from LESS, we won't need the Bootstrap distribution, but we will need the source code. Also, the Bootstrap JS files are included via our sub-theme's .info file. So grab the latest Bootstrap 3 release (3.3.4 at the time of this writing) and install it into your sub-theme (in our example above, "bootstrap_subtheme/bootstrap"). The only folders you need are "fonts", "js", and "less".

Tweak the sub-theme LESS

Inside the "less" folder of your sub-theme, there are several .less files. The main one is style.less, which is what you'll compile later. It brings in bootstrap.less (which is a copy of the same file in your bootstrap library folder), and then adds Drupal overrides, and then some blank header, content, and footer files.

You can keep your bootstrap.less file as-is, and comment out the components you don't want. Or you can scrap it all and use something like this:

@import "variables";
@import "../bootstrap/less/bootstrap.less";

This will import your local variables.less file, and then the rest of Bootstrap's source. Speaking of variables.less, the one that shipped with the starterkit at the time of writing had deprecated Bootstrap variables, so I rewrote mine to basically load in the variables from the Bootrap library and then override the ones I care about. That way I can easily upgrade the Bootstrap library at a later date with minimal need to update my sub-theme's LESS. My variables.less looks like this:

// Import Bootstrap's variables, then override them below.
@import "../bootstrap/less/variables.less";

// Update path to fonts.
@icon-font-path: "../bootstrap/fonts/";

Note that I changed the icon path. This fixed the references being broken when my LESS compiled to CSS.

Compile your LESS to CSS

Compiling your LESS is pretty easy. You need to install LESS first, but it should be as simple as:

npm install -g less

Then from your theme's folder, execute the following to compile your LESS into your sub-theme's style.css:

lessc less/style.less > css/style.css

That's it! You now have a LESS-powered sub-theme. Add your custom theming to the built-in header.less, content.less or footer.less files. I usually prefer to create a separate file for each type of thing—content type, navigation, homepage, etc). Just remember to remember to reference any additional files in style.less.

Last thoughts

Unless you already have it a newer version of jQuery on your site somehow, you'll probably want to install jQuery Update and configure it to use at least jQuery 1.9, the minimum requirement for Bootstrap.

Oh, and don't forget to enable your new sub-theme!

Submitted by Joel Stein on April 14, 2015.Tags: Drupal, Drupal 7, Drupal Planet
Categories: Drupal

Protected Installation (modules and themes)

New Drupal Modules - 14 April 2015 - 6:44pm

Allows you to install only the modules and themes from drupal.org. When installed, this module provides two simple features:

  1. Removes the upload field
  2. Validates the source URL entered for download (must be from drupal.org)

Developed and maintained by FISQUA; Sponsored by Marinha do Brasil.

    

Categories: Drupal

DrupalCon News: Sessions and BoFs are live

Planet Drupal - 14 April 2015 - 4:28pm

DrupalCon Los Angeles is less than a month away, and we couldn't be more excited for the great lineup of sessions and training opportunities. We're thrilled to announce that the schedule is now live on the website, so you can begin building your own dream DrupalCon schedule and planning your day. BOFs are also open, so make sure you claim your space soon -- they go quickly!

Categories: Drupal

Freelock : A hacked neglected site, Pantheon migration, and why you need a Drupal Site Assessment

Planet Drupal - 14 April 2015 - 3:47pm

We recently had a new client contact us and ask if we could move their sites over to Pantheon so they could do some in-house development work. Of course we can do that for you! We recommended doing a Site Assessment for them, just to make sure we know what we're dealing with. Our Site Assessment gives us a good understanding of the state of a client's current site.

Securityhacked siteSite AssessmentDrupalmaintenanceDomainsPantheonDrupal MigrationDrupal Planet
Categories: Drupal

Open Source Training: Help Us Create Free Drupal 8 Training Videos

Planet Drupal - 14 April 2015 - 1:44pm

Drupal 8 is just around the corner, and the Drupal community is excited!

We want to make sure that as many people as possible can use Drupal 8. However, many new Drupal 8 users will need training, which can be expensive and difficult to find.

So, we started a Kickstarter project to create Drupal 8 training and give it away for free!

Sounds intriguing? Watch the video to find out more ...

Categories: Drupal

Mediacurrent: Top Drupal 7 Modules: Final Edition

Planet Drupal - 14 April 2015 - 1:22pm

If you have been to the Mediacurrent blog before you have probably seen my Top 50 modules lists for Drupal 6 and 7. This current list will be my final update for Drupal 7. My last blog from 2012 was in dire need of updating so I have gone through one last time to give our readers my a good list of modules to start with for their next Drupal 7 site.

If you have visited Drupal.org recently you will notice that there are literally thousands of modules available to download. This can be very intimidating for new users who are just getting started building Drupal sites. The secret for newbies to know is that most developers continually use a few dozen of the same modules on almost every project.

As a 9 year veteran of Drupal I like to share my list of modules that I personally use on almost every site I build. If you are just getting started, this is a good list to begin with. If you are an intermediate or even an expert developer it can be helpful to skim the list to see if there are any modules that can help you on your next project.

Categories: Drupal

Red Crackle: Working With The Drupal Google Analytics Module

Planet Drupal - 14 April 2015 - 11:00am
This article helps you install the Drupal Google Analytics module. Go through the accompanying screenshots to enable and configure the module for your Drupal 7 site. We will show you how to deploy the Tracking ID for your site. We will be going through the different options you will come across while enabling this module. At the end of the article, we will show how Drupal Google Analytics works with real-time examples. We hope this article lays the foundation for your site to generate valuable insights day in, day out.
Categories: Drupal

Drupal Watchdog: Ready To Learn

Planet Drupal - 14 April 2015 - 9:32am
Feature

Drupal 8 is right around the corner; it's time to start brushing off your old textbooks, taking notes, asking questions, and preparing for all the awesomeness coming your way.

For most of us, Drupal 8 represents a departure from what we've come to know about how to create with Drupal. In short, we've got a learning curve we're going to have to overcome before we can be proficient with Drupal 8. But I'm here to tell you: it’s okay, we're in this together, and, given the proper learning environment and a little bit of guidance, you'll be Drupal 8 ready in no time.

In the glorious words of Douglas Adams, “Don't panic!”

While most of us have a tendency to want to jump right into the documentation and start poring over code samples, this is a good opportunity to take a step back and make sure we're ready to learn before we dive in. So let’s take a minute to think about education theory and the environment we put ourselves in when preparing to learn a new technology. How do we remove blockers from the learning process and set ourselves up for success?

Consider:

  • What is my motivation for learning this?
  • Where can I practice what I'm learning?
  • How will I know if I have learned the right thing?

How motivated are you?

Are you learning for fun, or for work?

Because you want to, or because you have to?

Our motivation – and our understanding of it – allows us to decide whether it is worth the investment in time and energy necessary to learn something new today – right now – which we may not use until tomorrow.

One of the best ways to assess whether or not you've learned something is to teach it to someone else. Lucky for you, you're not the only one embarking on the quest to learn Drupal 8; there are plenty of opportunities to share your new knowledge with others. Local user groups, co-workers – even friends on IRC – all represent great teaching opportunities. Moreover, these interactions often turn into discussions, and discussions are one of the best ways to get beyond the how and into the why.

Categories: Drupal
Syndicate content


Google+
about seo