Planet Drupal

Syndicate content
Drupal.org - aggregated feeds in category Planet Drupal
Updated: 41 min 21 sec ago

Gizra.com: Behat - The Right Way

Sun, 11/16/2014 - 23:00
pa href=http://behat.orgBehat/a is a wonderful tool for automatic testing. It allows you to write your user stories and scenarios in proper English, which is then parsed by Behat and transformed to a set of clicks or other operations that mimic a real user./p pIf you don#39;t have automated tests on your project, I would argue that you#39;re doing it wrong (I explain why on a href=https://www.getpantheon.com/blog/drupal-development-gizra-wayThe Gizra Way/a presentation). Even having a emsingle/em test is much better than none./p pWith that said, it#39;s super easy to abuse Behat. We are developers and we think sort of like machines (not really, but you get my point). If you would like to test login to your site you could easily do/p div class=highlightprecode class=cucumber language-cucumber data-lang=cucumberspan class=kGiven /spanspan class=nfI visit quot;/spanspan class=s/user/login/spanspan class=nfquot;/span span class=nf /spanspan class=c# fill the username and password input fields, and click submit/spanspan class=nf/span span class=nf /spanspan class=kWhen /spanspan class=nfI fill quot;/spanspan class=susername/spanspan class=nfquot; with quot;/spanspan class=sfoo/spanspan class=nfquot;/span span class=nf /spanspan class=kAnd /spanspan class=nfI fill quot;/spanspan class=spassword/spanspan class=nfquot; with quot;/spanspan class=sbar/spanspan class=nfquot;/span span class=nf /spanspan class=kAnd /spanspan class=nfI press quot;/spanspan class=sLogin/spanspan class=nfquot;/span span class=nf /spanspan class=kThen /spanspan class=nfI should get a quot;/spanspan class=s200/spanspan class=nfquot; HTTP response/span /code/pre/div pYour test will return green, but it could be improved:/p pa href=http://www.gizra.com/content/behat-the-right-way/Continue reading…/a/p

Drupal Association News: Don't Miss the Blink Reaction Membership Discount

Fri, 11/14/2014 - 23:09
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpAt the Drupal Association, we love our members and want to show it. That’s why we team up with some of the best Drupal companies around every month to offer our members spectacular discounts./p pThis month, we’re pleased to announce that  Drupal Association Members can receive a href=https://assoc.drupal.org/blink-reaction target=_blank30% off Blink Institute training classes from Blink Reaction/a. Using the discount code a href=https://assoc.drupal.org/blink-reactionhere/a, Drupal Association members can access fantastic training from Blink, led by veteran Drupalists who are expert trainers. Note: this offer can not be combined with other promotional offers.a href=https://assoc.drupal.org/blink-reaction target=_blankimg alt=Blink Reaction logo src=https://assoc.drupal.org/files/blink-reaction-140-80.png style=width: 140px; height: 80px; margin: 5px; float: left; //a/p pBlink Reaction is a premiere provider of enterprise Drupal services to Fortune 1000 companies throughout the US. Their Drupal Training program is designed to help individuals, Enterprise service providers and small business owners harness the power of Drupal./p pThe Blink Training program has taught beginner and advanced methods to hundreds of individuals and corporations. Blink is proud to offer free and nearly free training through Global Drupal Training Days and at Drupal Camps alongside their public and private training offerings./p pMake sure you take advantage of this great opportunity while it lasts. Kudos to our friends over at Blink -- thanks for sharing the Drupal love!/p /div/div/div

Code Karate: Drupal 7 Imagefield Focus

Fri, 11/14/2014 - 22:31
div class=field field-name-field-episode-number field-type-number-integer field-label-abovediv class=field-labelEpisode Number:nbsp;/divdiv class=field-itemsdiv class=field-item even178/div/div/divdiv class=field field-name-field-ddod-video field-type-file field-label-hiddendiv class=field-itemsdiv class=field-item evenimg src=http://codekarate.com/sites/default/files/styles/large/public/media-youtube/Ai-btDJRIw0.jpg?itok=tIl4EpjD alt=Drupal 7 Image Field Focus - Daily Dose of Drupal episode 178 //div/div/divdiv class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpIn this episode we look at the a href=https://www.drupal.org/project/imagefield_focus rel=nofollowImagefield Focus Module/a. This module adds another option to the image styles on a content type field. With this module you are able to specify a focus and crop area of your image. Once you have selected either or both of those areas the module then resizes and focuses on the certain area you specified./p/div/div/divdiv class=field field-name-taxonomy-vocabulary-1 field-type-taxonomy-term-reference field-label-abovediv class=field-labelTags:nbsp;/divdiv class=field-itemsdiv class=field-item evena href=/category/tags/drupalDrupal/a/divdiv class=field-item odda href=/category/tags/drupal/core-concepts/fieldsFields/a/divdiv class=field-item evena href=/category/tags/drupal/drupal-7Drupal 7/a/divdiv class=field-item odda href=/category/tags/drupal/image-handlingImage Handling/a/divdiv class=field-item evena href=/category/tags/drupal-planetDrupal Planet/a/divdiv class=field-item odda href=/category/tags/uidesignUI/Design/a/div/div/div

Midwestern Mac, LLC: Creating a contact form programmatically in Drupal 8

Fri, 11/14/2014 - 19:24
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpDrupal 8's expanded and broadly-used Entity API extends even to Contact Forms, and recently I needed to create a contact form programmatically as part of a href=https://www.drupal.org/project/honeypotHoneypot's/a test suite. Normally, you can export a contact form as part of your site configuration, then when it's imported in a different site/environment, it will be set up simply and easily./p pHowever, if you need to create a contact form programmatically (in code, dynamically), it's a rather simple affair:/p pFirst, codeuse/code Drupal's ContactForm class at the top of the file so you can use the class in your code later:/p/div/div/div

Drupal Association News: Happy Global Training Day!

Fri, 11/14/2014 - 18:39
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpIt's Global Training Day and we couldn't be more excited! All across the world, people are teaching and learning Drupal, and sharing that open source love./p pGlobal Training Days happen once a quarter, and focus on one of two curriculums:/p ulli Introduction to Drupal, a full day training on the basics of Drupal. Attendees will leave having successfully built a Drupal site. It is ideal for those interested in exploring Drupal as a career path./li li What is Drupal? This half-day workshop will address the basics of Drupal, and will give an overview to those interested in evaluating or implementing Drupal./li /ulpHere are some of the highlights of today's Global Training Day tweets./p blockquote class=twitter-tweet lang=en xml:lang=en pThe first Global a href=https://twitter.com/hashtag/Drupal?src=hash#Drupal/a Training Day Hungary is ON! a href=https://twitter.com/tanarurkerem@tanarurkerem/a and a href=https://twitter.com/kuszingjanos@kuszingjanos/a on the stage :) cc a href=https://twitter.com/DrupalAssoc@DrupalAssoc/a a href=http://t.co/DGt1yvFuPgpic.twitter.com/DGt1yvFuPg/a/p — Zsófi M. (@zsofimajor) a href=https://twitter.com/zsofimajor/status/533188818267291648November 14, 2014/a/blockquote script async= src=//platform.twitter.com/widgets.js charset=utf-8/scriptblockquote class=twitter-tweet lang=en xml:lang=en pWe are ready a href=https://twitter.com/hashtag/drupalday?src=hash#drupalday/a!!! a href=http://t.co/ezIIl1aNHCpic.twitter.com/ezIIl1aNHC/a/p — Wellnet (@Wellnet) a href=https://twitter.com/Wellnet/status/533169335913963520November 14, 2014/a/blockquote script async= src=//platform.twitter.com/widgets.js charset=utf-8/scriptblockquote class=twitter-tweet lang=en xml:lang=en pa href=https://twitter.com/hashtag/DrupalCampMelbourne2014?src=hash#DrupalCampMelbourne2014/a Day 1 Group Photo in sunny Melbourne! a href=http://t.co/DgFh9Wcb7Ipic.twitter.com/DgFh9Wcb7I/a/p — Drupal Melbourne (@DrupalMelbourne) a href=https://twitter.com/DrupalMelbourne/status/533087983650361345November 14, 2014/a/blockquote script async= src=//platform.twitter.com/widgets.js charset=utf-8/scriptpWhere's Global Training Day happening? This map shows you where people are learning about Drupal all over the world./p piframe frameborder=0 height=320 marginheight=0 marginwidth=0 scrolling=no src=https://maps.google.com/maps/ms?msa=0amp;msid=217958227389918490322.0004e8245de4db09bceb9amp;ie=UTF8amp;t=pamp;ll=31.952162,11.25amp;spn=142.69961,75.234375amp;z=1amp;output=embed width=620/iframe/p /div/div/div

Paul Booker: How to create Blocks in Drupal 7

Fri, 11/14/2014 - 18:28
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpre class=brush: php // $Id$ /** * @file * Implements various blocks to improve pending content workflow. */ /** * Implements hook_block_info(). */ function approval_block_info() { $blocks['pending_comments'] = array( 'info' =gt; t('Pending Comments'), 'status' =gt; TRUE, 'region' =gt; 'sidebar_first', 'weight' =gt; 0, ); $blocks['unpublished_nodes'] = array( 'info' =gt; t('Unpublished Nodes'), 'status' =gt; TRUE, 'region' =gt; 'sidebar_first', 'weight' =gt; 0, ); return $blocks; } /** * Implements hook_block_configure(). */ function approval_block_configure($delta) { $form = array(); switch($delta) { case 'pending_comments': $form['pending_comment_count'] = array( '#type' =gt; 'textfield', '#title' =gt; t('Configure Number of Comments to Display'), '#size' =gt; 6, '#description' =gt; t('Enter the number of pending comments that will appear in the block.'), '#default_value' =gt; variable_get('pending_comment_count', 5), ); break; case 'unpublished_nodes': $form['unpublished_node_count'] = array( '#type' =gt; 'textfield', '#title' =gt; t('Configure Number of Nodes to Display'), '#size' =gt; 6, '#description' =gt; t('Enter the number of unpublished nodes that will appear in the block.'), '#default_value' =gt; variable_get('unpublished_node_count', 5), ); break; } return $form; } /** * Implements hook_block_save(). */ function approval_block_save($delta = '', $edit = array()) { switch($delta) { case 'pending_comments': variable_set('pending_comment_count', (int)$edit['pending_comment_count']); break; case 'unpublished_nodes': variable_set('unpublished_node_count', (int)$edit['unpublished_node_count']); break; } return; } /** * Implements hook_block_view(). */ function approval_block_view($delta = '') { switch ($delta) { case 'pending_comments': $block['subject'] = t('Pending Comments'); $block['content'] = approval_block_contents($delta); return $block; break; case 'unpublished_nodes': $block['subject'] = t('Unpublished Nodes'); $block['content'] = approval_block_contents($delta); return $block; break; } } /** * A module-defined block content function. */ function approval_block_contents($delta) { switch ($delta) { case 'pending_comments': if (user_access('administer comments')) { $nbr_comments = variable_get('pending_comment_count'); $result = db_query(SELECT cid, subject FROM {comment} WHERE status = 0 limit $nbr_comments); $items = array(); foreach ($result as $row) { $items[] = l($row-gt;subject, 'comment/'.$row-gt;cid.'/edit'); } return array('#markup' =gt; theme('item_list', array('items' =gt; $items))); } break; case 'unpublished_nodes': if (user_access('administer nodes')) { $nbr_nodes = variable_get('unpublished_node_count'); $result = db_query(SELECT nid, title FROM {node} WHERE status = 0 limit $nbr_nodes); $items = array(); foreach ($result as $row) { $items[] = l($row-gt;title, 'node/'.$row-gt;nid.'/edit'); } return array('#markup' =gt; theme('item_list', array('items' =gt; $items))); } break; } } /pre/div/div/divdiv class=field field-name-field-tags field-type-taxonomy-term-reference field-label-above clearfixh3 class=field-labelTags: /h3ul class=linksli class=taxonomy-term-reference-0a href=/drupal-developer/tags/block typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=block/a/lili class=taxonomy-term-reference-1a href=/drupal-developer/tags/module typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=module/a/lili class=taxonomy-term-reference-2a href=/drupal-developer/tags/drupalplanet typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=drupalplanet/a/li/ul/divdiv class=field field-name-field-url field-type-link-field field-label-abovediv class=field-labelURL:nbsp;/divdiv class=field-itemsdiv class=field-item evena href=https://gist.github.com/paulbooker/5420976paulbooker / gist:5420976/a/div/div/divdiv class=easy_social_box clearfix horizontal easy_social_lang_und div class=easy_social-widget easy_social-widget-twitter firsta href=http://twitter.com/share class=twitter-share-button data-url=http://www.paulbooker.co.uk/drupal-developer/code-snippet/how-create-blocks-drupal-7 data-count=horizontal data-lang = en data-via= data-related=:Check it out! data-text=How to create Blocks in Drupal 7Tweet/a/div div class=easy_social-widget easy_social-widget-facebookiframe src=//www.facebook.com/plugins/like.php?locale=en_USamp;href=http%3A//www.paulbooker.co.uk/drupal-developer/code-snippet/how-create-blocks-drupal-7amp;send=falseamp;layout=button_countamp;width=88amp;show_faces=trueamp;action=likeamp;colorscheme=lightamp;font=amp;height=21amp;appId= scrolling=no frameborder=0 style=border:none; overflow:hidden; width:88px; height:21px; allowTransparency=true/iframe/div div class=easy_social-widget easy_social-widget-googleplusdiv class=g-plusone data-size=medium data-annotation=bubble data-href=http://www.paulbooker.co.uk/drupal-developer/code-snippet/how-create-blocks-drupal-7/div/div div class=easy_social-widget easy_social-widget-linkedin lastscript type=in/share data-url=http://www.paulbooker.co.uk/drupal-developer/code-snippet/how-create-blocks-drupal-7 data-counter=right/script/div /div !-- /.easy_social_box --

Paul Booker: How to create an autocomplete form element in Drupal 7

Fri, 11/14/2014 - 17:22
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpre class=brush: php lt;?php function demo_menu() { $items['demo-autocomplete-test'] = array( 'title' =gt; 'Test autocomplete', 'page callback' =gt; 'drupal_get_form', 'page arguments' =gt; array('demo_form'), 'access arguments' =gt; array('view published content'), 'type' =gt; MENU_NORMAL_ITEM, ); $items['demo-autocomplete-engine'] = array( 'page callback' =gt; 'demo_autocomplete', 'access arguments' =gt; array('view published content'), 'type' =gt; MENU_CALLBACK, ); return $items; } function demo_form($form, amp;$form_state) { $form = array(); $form['colors'] = array( '#title' =gt; t('Colors'), '#type' =gt; 'textfield', '#maxlength' =gt; 60, '#autocomplete_path' =gt; 'demo-autocomplete-engine', ); $form['submit'] = array( '#type' =gt; 'submit', '#value' =gt; 'Submit', ); return $form; } function demo_autocomplete($text) { $results = array(); $query = db_select('colors', 'c'); $query -gt;condition('c.color', '%' . db_like($text) . '%', 'LIKE') -gt;fields('c', array('color')) -gt;orderBy('color', 'ASC'); $colors = $query-gt;execute(); foreach ($colors as $row) { $results[$row-gt;color] = check_plain($row-gt;color); } drupal_json_output($results); } /pre/div/div/divdiv class=field field-name-field-tags field-type-taxonomy-term-reference field-label-above clearfixh3 class=field-labelTags: /h3ul class=linksli class=taxonomy-term-reference-0a href=/drupal-developer/tags/form typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=form/a/lili class=taxonomy-term-reference-1a href=/drupal-developer/tags/hookform typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=hook_form/a/lili class=taxonomy-term-reference-2a href=/drupal-developer/tags/autocomplete typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=autocomplete/a/lili class=taxonomy-term-reference-3a href=/drupal-developer/tags/hookmenu typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=hook_menu/a/lili class=taxonomy-term-reference-4a href=/drupal-developer/tags/drupaljsonoutput typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=drupal_json_output/a/lili class=taxonomy-term-reference-5a href=/drupal-developer/tags/drupalplanet typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=drupalplanet/a/li/ul/divdiv class=easy_social_box clearfix horizontal easy_social_lang_und div class=easy_social-widget easy_social-widget-twitter firsta href=http://twitter.com/share class=twitter-share-button data-url=http://www.paulbooker.co.uk/drupal-developer/code-snippet/how-create-autocomplete-form-element-drupal-7 data-count=horizontal data-lang = en data-via= data-related=:Check it out! data-text=How to create an autocomplete form element in Drupal 7Tweet/a/div div class=easy_social-widget easy_social-widget-facebookiframe src=//www.facebook.com/plugins/like.php?locale=en_USamp;href=http%3A//www.paulbooker.co.uk/drupal-developer/code-snippet/how-create-autocomplete-form-element-drupal-7amp;send=falseamp;layout=button_countamp;width=88amp;show_faces=trueamp;action=likeamp;colorscheme=lightamp;font=amp;height=21amp;appId= scrolling=no frameborder=0 style=border:none; overflow:hidden; width:88px; height:21px; allowTransparency=true/iframe/div div class=easy_social-widget easy_social-widget-googleplusdiv class=g-plusone data-size=medium data-annotation=bubble data-href=http://www.paulbooker.co.uk/drupal-developer/code-snippet/how-create-autocomplete-form-element-drupal-7/div/div div class=easy_social-widget easy_social-widget-linkedin lastscript type=in/share data-url=http://www.paulbooker.co.uk/drupal-developer/code-snippet/how-create-autocomplete-form-element-drupal-7 data-counter=right/script/div /div !-- /.easy_social_box --

MariqueCalcus: Prius is in Beta like Drupal :-)

Fri, 11/14/2014 - 17:05
pAlongside the long awaited strongDrupal 8 Beta/strong release, we have also updated our first Drupal 8 theme. We haven't include many new features but we have tried to clean up its code and have improved our starter kit. Anyway, let's dig into the latest new features we have discovered with the first Beta releases of Drupal 8. Feel free to check out the code on a href=https://www.drupal.org/project/prius target=_blankdrupal.org/a or read our dedicated a href=http://mariquecalcus.com/blogs/our-first-drupal-8-theme target=_blankblog entry/a if you want to find out more about our strongfirst Drupal 8 theme/strong. If you can wait to see the result, take a look at our a href=http://prius.mariquecalcus.com/ target=_blankonline demo/a./p a href='http://www.mariquecalcus.com/blogs/drupal-prius-beta-release'Read More.../a

Blue Drop Shop: Failing is Important: Drupal Camp A/V Kit Update

Fri, 11/14/2014 - 15:17
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpWhen I learned BADCamp wasn't going to be recording sessions, I jumped at the chance to field-test the camp record kits I'm working on. After all, I was confident I fixed the audio equation and was going to start talks with the Drupal Association about next steps./p pa href=http://bluedropshop.com/blog/update-drupal-camp-av-kit-rebootThe current recipe for the kit/a is a Hauppage HD Rocket PVR for the screen capture and the Zoom H2N voice recorder as the microphone. Add to that a handful of dongles and converters to cover HDMI in/out for the PVR, and you're good to go./p pWalking in to BADCamp, I was feeling great. I'm a big advocate for session records and I would be covering three rooms. Pretty cool, right? /p pWrong./p pThroughout day one of sessions, a couple laptops had connection issues and had to bypass recordings, but overall things appeared to be going smoothly. It wasn't until the end of the day when copying files off the thumb drives that I noticed many recordings were 0k mp4 files, primarily from the main room. This was the most disconcerting, because every indication was that things were working./p pOn this, I have a couple ideas, but no solid understanding of why the files didn't write. That was the easiest room in terms of handshake between PVR and projector, plus there was a dedicated A/V crew that was helping hook up laptops./p pWhen we tested at Fox Valley's camp, the laptop was typically disconnected by the time I made it to the rooms to swap out equipment. I suspect that disconnecting the device before hitting the stop button and waiting long enough for the files to write may kill the save. This one will be easy to test./p pProjectors were also an issue. In the main space, none were HD and all were different flavors of Sony. Some hooked up just fine, while others squeezed the output. The Saturday-only keynote room was loving it. /p pAnd then there were presenter laptop issues. There were a few older VGA-only laptops. One refused to work with the VGA to HDMI converted, while one worked for about 15 minutes before failing off and on, mid-presentation. One of the A/V techs suggested that maybe there is not enough USB power on the laptops to handle both the PVR and the converter, so a powered USB hub may be in order. Most Macbooks were fine, but a handful gave output with a very green tint to it./p pNo surprise, HDMI in/out is proving to be more of a hurdle than originally anticipated. In addition to HDMI in, the PVR also has an option to accept component video. It's likely that converting VGA out from a laptop to component video in to the PVR will be a safer bet. So the question becomes whether I can convert the HDMI out of the PVR to VGA for the projectors.   /p pAll in all, this was an enormous fail. That said, this was the absolute best time for it to happen. My goal is to build a system that can handle the majority of the random that a camp will throw at it. /p pI'm looking forward to testing the next iteration./p /div/div/divdiv class=field field-name-field-tags field-type-taxonomy-term-reference field-label-above clearfixh3 class=field-labelTags: /h3ul class=linksli class=taxonomy-term-reference-0 rel=dc:subjecta href=/tags/drupal-planet typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=drupal planet/a/lili class=taxonomy-term-reference-1 rel=dc:subjecta href=/tags/drupal-camps typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=drupal camps/a/lili class=taxonomy-term-reference-2 rel=dc:subjecta href=/tags/session-recording typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=session recording/a/li/ul/div

Tyler Frankenstein: Build a Mobile App to Geo Locate Nearby Places with Drupal

Fri, 11/14/2014 - 13:30
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encoded pimg alt= class=media-image height=406 style=width: 240px; height: 307px; border-width: 1px; border-style: solid; float: right; margin: 0px 0px 1em 1em; width=317 typeof=foaf:Image src=http://tylerfrankenstein.com/sites/default/files/columbus-with-results.png /In this tutorial (a href=http://drupalcampohio.org/sessions/building-mobile-apps-examplefor DrupalCamp Ohio 2014/a) we'll explore how to build a mobile application and website that can geo locate places near our current position. The nearby location results will be displayed on a map, and will allow us to click on a result item to view its complete details./ppThe website will be powered by a href=http://www.drupal.orgDrupal 7/a. The mobile application will be built using a href=http://www.drupalgap.orgDrupalGap/a, which is powered by a href=http://www.phonegap.comPhoneGap/a and a href=http://www.jquerymobile.comjQuery Mobile/a. Let's get started!/pp/div/div/div

InternetDevels: Welcome us in Lviv! New office of InternetDevels company

Fri, 11/14/2014 - 13:11
div class=field field--name-body field--type-text-with-summary field--label-hiddendiv class=field__itemsdiv class=field__item evenpLong time ago in a galaxy far far away… Hold on, it was precisely 7 years ago, 15 November, 2007 in Lutsk, when the InternetDevels Drupal development studio was founded. The company has made a long way since then: overcomed lots of obstacles to gain the respected position at web development market; established number of contacts and connections; made significant contribution to the world’s Drupal community; taken over new development technologies, like Symfony framework… But there’s always something to do!/p a href=http://internetdevels.com/blog/internetdevels-lviv-officeRead more/a/div/div/div

CiviCRM Blog: New features for Webform-Integration - cases, activities, grants and attachments!

Fri, 11/14/2014 - 00:36
div class=field field-name-body field-type-text-with-summary field-label-hidden div class=field-item even property=content:encodedpThanks to sponsorship from Amnesty Intl. Spain and GMCVO the Webform-Integration module now has 4 new features available for you to try out:/p ulli strongSupport for CiviGrant/strong - allows front-end users to apply for grants and update their application information./li li strongMultiple Cases/strong - open or update any number of cases on a single webform./li li strongMultiple Activities/strong - Create as many activities as you wish. br / Activity and case settings have been decoupled from each other so you can file activities on a case, or not, independent of what cases you are working with./li li strongFile Attachments/strong - Webform Grants and Activities now have built-in support for native file attachments./li /ulh3 Try it out!/h3 pYou can test these new features by downloading the dev version of a href=https://www.drupal.org/project/webform_civicrmWebform-CiviCRM 4/a and going through the usual module upgrade procedure. This upgrade will alter your existing webform activity and case settings to work with the new features. I recommend trying it out on a test copy of your site and let me know if you spot any bugs. As soon as it's had a bit more testing and feedback we'll get these features into the next stable release of the module./p /div /div div class=field field-name-taxonomy-vocabulary-1 field-type-taxonomy-term-reference field-label-hidden clearfix ul class=field-items li class=field-item even a href=/category/civicrm-blog-categories/drupal typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=Drupal/a /li /ul /div

Annertech: My First DrupalCon: DrupalCon Amsterdam

Thu, 11/13/2014 - 23:36
span class=field field-node--title field-name-title field-type-string field-label-hiddenMy First DrupalCon: DrupalCon Amsterdam/span div class=field field-node--body field-name-body field-type-text-with-summary field-label-hidden div class=field-items div class=field-itempI was given various bits of advice leading up to my attending my first DrupalCon ever. The essence of the one that stuck with me the most is:/p pPlan. Be realistic. Know you won’t see everything, so make what you do see count./p pFirst on the agenda - get the travel bug out of my system./p pIt was great. I have a new favourite city, and very fond memories of a real, live a href=http://www.vangoghmuseum.nl/en/search/collection target=_blankVan Gogh/a. Monday: explore city. Check./p/div /div /div

ERPAL: How to build a full-featured e-commerce business with Drupal

Thu, 11/13/2014 - 22:21
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenpWhether you’re a startup or an already-established business that wants to start selling online, Drupal has all the tools you need. It provides flexible modules for building e-commerce features and for defining workflows, data structures and lists, and displays. The Drupal Commerce framework provides you with everything required to sell products, services or files online. It integrates very well with Drupal and all its contrib modules, so you almost only need to do configuration – no programming – to build the features you need. In ERPAL Platform, we’ve built a Drupal distribution for the community to use to create flexible business applications. To be as adaptable as possible, it’s based on Drupal Commerce, CRM Core and ERPAL Core. So ERPAL Platform itself actually just supplies an appropriate collection of best practice modules from the Drupal community that are already preconfigured and cleverly fitted together to provide features for all kinds of business processes. The sales process is therefore already preconfigured and you can extend it as necessary to integrate seamlessly with project management features, manufacturing features or online shop features./p pIn the video below, we show you how you can implement ERPAL Platform to use its existing features as the administration backend of your online shop and add a storefront where your customers can buy your products, request quotations and place orders. This enables you to build a complete online business in one Drupal box including a backend with a lightweight CRM as well as quotations, orders and invoices to cover the entire sales process for an e-commerce business. In this example your online store will have a completely different theme compared to the administration backend. All you need to do is to download some additional modules and add some specific configurations. It’s that easy: just watch the video!/p piframe frameborder=0 height=480 src=//www.youtube.com/embed/A5rx_UoQXf8 width=640/iframe/p pTo see some real use cases about how it works in projects where ERPAL Platform is used to sell products online, you may be interested in the slides of a previous a href=http://de.slideshare.net/ManuelPistner/drupal-commerce-41509089webinar, created in cooperation with the Commerce Guys/a, the company behind Drupal Commerce./p pMotivational slides from a presentation at Drupalcamp Berlin can be found at/p piframe frameborder=0 height=355 scrolling=no src=//www.slideshare.net/slideshow/embed_code/41611430 style=border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%; width=425/iframe/p div style=margin-bottom:5pxstronga href=//de.slideshare.net/ManuelPistner/online-shop-with-erpal-platform target=_blank title=Building an online business quot;in a Drupal boxquot;Building an online business in a Drupal box/a /strong from stronga href=//www.slideshare.net/ManuelPistner target=_blankManuel Pistner/a/strong/div p /p /div/div/div

Commerce Guys: Is your Drupal site protected?

Thu, 11/13/2014 - 20:47
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpOn October 15th a new version of Drupal core was published (a href=https://www.drupal.org/PSA-2014-003see details of this fix/a), so naturally everyone is wondering: How do I protect my site?/p h2How Updates Work in Drupal/h2 pDrupal is open source software managed by a community made up of all kinds of experts and hobbyists. Community members who manage security specialize in the processing and verification of all modules hosted on drupal.org and the core of Drupal itself. This super-smart team has a long history in Drupal and a vast understanding of the core code, its history and its planned future. /p pThey are in charge of analyzing the existing application to protect it from malicious threats, regardless of their origins. When an issue is detected, they evaluate its impact and urgency in order to determine an appropriate mode of communication that meets the needs of the community. This usually means that in the event of a risk, an update is issued on one of the pre-planned bi-weekly release dates./p pThe security team works independently and regularly offers updates to the modules and Drupal core. Below are some ways you can follow these updates to keep your site secure and up to date./p h3The Security Alerts/h3 pspan style=line-height: 1.6;Most Drupal users have an account on drupal.org. If you don’t have one, you’re missing out and you should get one immediately. From your account, you have access to the Newsletter tab. On this page, you are invited to subscribe to the security newsletter and be informed of updates./span/p pspan style=line-height: 1.6;img alt=Drupal.org newsletter subscription src=https://commerceguys.com/sites/default/files/blog/files/newsletter%20tab%20on%20drupalorg.png style=width: 100%; //span/p h3Twitter/h3 pLike any self-respecting tech community, the security team is on Twitter: a href=https://twitter.com/drupalsecurity@drupalsecurity/a./p h3RSS/h3 pYou can find subscribe to two different RSS feeds of security advisories for a href=https://www.drupal.org/security/rss.xmlDrupal core/a and for a href=https://www.drupal.org/security/contrib/rss.xmlcontributed modules/a./p h3Application maintenance of your site/h3 pWhether you developed your site or worked with an agency, once online it must be maintained. The purpose of this maintenance is not to make your site a Rolls Royce, but rather to protect it against errors, insecurities and to improve it with the new features added to Drupal core and the modules you use. It’s encouraged to update early and often./p pYou can choose the frequency and process for updates, but the operations to be carried out are always the same: update the core of Drupal, update themes and modules and test the full operation of your application before you push your updated project live. Prior to deployment, ensure you have a full backup of your codebase, your files directories, and your database in case anything goes wrong./p h2How do I update my site?/h2 pSeveral technical means are available to you to get the latest version of core, themes and Drupal modules. Whatever method you choose, you will retrieve new files to install it on your production site. Here is a summary of what to do in general (this protocol is an example for your project, please refer to your usual procedure of deployment)./p pStarting with a copy of your site on a local environment:/p ulliGet the new version of files or a patch containing updates./li liReview the changelog to see what has been changed that may affect existing functionality on your site, including any new dependencies, minor API changes, or other notes requiring manual intervention in the update process./li liReplace the files or apply the patch. At this point updates are physically available but they are not necessarily applied on your site./li liYou may be asked to launch an update of the database, for example. ulliIn this case, start Drush UPDB drush command or run the update.php page on your local copy site. This operation will be applied to your site changes in its database./li /ul/li liTo ensure that the updates have all been taken into account, empty the cache of your site. Please note this may take some time and will affect the navigation on the site for treatment. For production sites, it is recommended to keep your current deployment procedure./li liOnce this is done, test your site. Check that everything is working properly./li /ulpIf you update a Drupal site between two very different versions of the core, it is possible that some functionalities could be affected. However, in an update of one direct release to another, you should not experience major functional changes. When you are confident with this procedure, following your usual process, update your site or sites./p h2How to update Security SA-CORE-2014-005 - Drupal core - SQL injection/h2 pIf your site has been well-maintained, the security update will be simple and have no effect on the functionality of your project. You can update the core of Drupal as you normally do using this new version: a href=https://www.drupal.org/project/drupalhttps://www.drupal.org/project/drupal/a/p pHowever, if you have not maintained the core of your application for some time (skipping several versions) and even though we do not recommend it, if you made a manual change in the core of Drupal, we recommend that you apply the patch only containing the security patch itself, here: a href=https://www.drupal.org/files/issues/SA-CORE-2014-005-D7.patchhttps://www.drupal.org/files/issues/SA-CORE-2014-005-D7.patch/a/p pIn both cases, the changes in the new version of Drupal will have no effect on the functionality of your project, because it only affects one file related to forms./p h2How to ensure security on my eCommerce site?/h2 pSecurity is a key issue for an eCommerce website and it is your duty as a merchant to maintain a safe site for your users. To ensure the security of your site, you must first perform regular Drupal core updates, security or not, or suffer the risky consequences./p pThen, regularly update the modules you use. In some cases, this may affect the functionality of your site, and must be treated with kid gloves./p pIn any case, to make these updates, please refer to the standard procedure for updating your site that you have set up with your agency or web host, or enjoy the new technology implementation of a href=https://platform.shPlatform.sh/a to easily update your site and test with confidence./p h2How Commerce Guys ensures the security of your projects/h2 pSubscribers of our Drupal Application Support and Commerce Application Support programs have seen first hand how we can help protect your sites. We patched our customers immediately and 100% were protected whether they hosted with us or not./p pOur Platform.sh subscribers benefited from the ability to use a “Drush make” driven workflow to manage the codebase for their sites. This workflow has the advantage of managing the versions of Drupal core and contributed themes and modules on your site through a single configuration file that contains a list of elements that make up your site. Platform.sh uses this file to create and deploy your site by downloading modules and the core of Drupal, making updates fast and easy./p pBy creating a file Drush Make File, you can ask to recover the latest version of Drupal with the security patch automatically. You gain in maintenance time and reduce your potential for errors./p pIn addition to ensuring the stability of your hosting, Platform.sh blocked incoming HTTP requests for applications that had not applied the patch. Therefore, only stable sites were available on Platform.sh, and any unprotected sites were immediately aware that action must be taken./p pRead more about this protective block a href=https://platform.sh/blog/2014/10/21/protecting-your-apps/here/a./p pIf you want to know more about the updates to Drupal, the following links to learn more:/p ullia href=https://www.drupal.org/drupal-7.32-release-notesThe details on the newest version of Drupal/a/li lia href=https://www.drupal.org/securityThe Drupal.org security page/a/li lia href=https://www.drupal.org/security/secure-configurationDrupal.org security configuration advice page/a/li lia href=https://github.com/greggles/cracking-drupal/blob/master/after-an-exploit.mdBlog post: Your Drupal site got hacked. Now what?/a (via a href=https://twitter.com/qdelance@qdelance/a)/li /ul/div/div/div

Acquia: Women in Technology: Better Business, Better World – Meet Vinita Rathi

Thu, 11/13/2014 - 15:43
div class=form-item form-type-item labelLanguage /label Undefined /div div class=field field-name-body field-type-text-with-summary field-label-hidden div class=field-items div property=content:encoded class=field-item evenp/p/div /div /div span property=dc:title content=Women in Technology: Better Business, Better World – Meet Vinita Rathi class=rdf-meta/span

Open Source Training: How to Use the Drupal Quiz Module

Thu, 11/13/2014 - 08:51
!-- Start ScreenSteps Content -- div class=LessonContent div class=LessonSummary pThe Quiz module is a sophisticated and flexible way to create quizzes in Drupal./p pTo get started with Quiz, you need to install and enable the 2 core Quiz modules from a href=http://drupal.org/project/quizhttp://drupal.org/project/quiz/a:/pimg src=http://feeds.feedburner.com/~r/ostrainingdrupal/~4/sDrnnyt4XCA height=1 width=1/

PreviousNext: Lightning talk - Contributing to Drupal Core without losing your mind

Thu, 11/13/2014 - 06:14
pDuring our weekly developers meeting a href=http://drupal.org/u/larowlanI/a spoke about my approach to contributing to Drupal core, sharing some tips and tricks I've learnt along the way/p pThis is a preview of a href=https://melbourne2015.drupal.org.au/session/contributing-core-without-losing-your-minda proposed session/a for DrupalSouth Melbourne 2015/p span property=dc:title content=Lightning talk - Contributing to Drupal Core without losing your mind class=rdf-meta/span

Midwestern Mac, LLC: Midwestern Mac's Vagrant Boxes - CentOS and Ubuntu

Thu, 11/13/2014 - 05:01
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpIn support of my mission to make local development easier and faster, I've released boxes for four of the most popular Linux distributions I use and see used for Drupal sites: CentOS 6/7 and Ubuntu 12.04/14.04./p p style=text-align: center;a href=http://files.midwesternmac.com/img src=/sites/midwesternmac.com/files/vagrant-boxes-mm-files.png width=600 height=223 alt=Vagrant Boxes - Midwestern Mac, LLC //a/p/div/div/div