<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:media="http://search.yahoo.com/mrss/"><channel><title><![CDATA[@dpi]]></title><description><![CDATA[Drupal Development]]></description><link>https://dpi.id.au/</link><image><url>https://dpi.id.au/favicon.png</url><title>@dpi</title><link>https://dpi.id.au/</link></image><generator>Ghost 1.24</generator><lastBuildDate>Mon, 11 May 2020 17:01:01 GMT</lastBuildDate><atom:link href="https://dpi.id.au/rss/" rel="self" type="application/rss+xml"/><ttl>60</ttl><item><title><![CDATA[RNG 1.3: The Registrant Update]]></title><description><![CDATA[<div class="kg-card-markdown"><p>This latest release for [RNG](<a href="https://www.drupal.org/project/rng">RNG</a> brings two major features: The ability for <strong>anonymous users to register</strong> for events. And the ability to <strong>create, and associate non-users</strong> with events.</p>
<blockquote>
<p><em>RNG is an event management module for Drupal 8 created in the spirit of <a href="https://drupal.org/project/registration">Entity Registration</a> (Drupal 7) and <a href="https://www.drupal.org/project/signup">Signup</a> (Drupal</em></p></blockquote></div>]]></description><link>https://dpi.id.au/rng-1-3/</link><guid isPermaLink="false">5a9d21ab69aaa10001b11c36</guid><category><![CDATA[drupal]]></category><category><![CDATA[drupal8]]></category><category><![CDATA[rng]]></category><category><![CDATA[rng_contact]]></category><category><![CDATA[drupalplanet]]></category><dc:creator><![CDATA[Daniel Phin]]></dc:creator><pubDate>Thu, 17 Nov 2016 16:00:00 GMT</pubDate><media:content url="https://dpi.id.au/content/images/2016/11/bw_crowd.jpg" medium="image"/><content:encoded><![CDATA[<div class="kg-card-markdown"><img src="https://dpi.id.au/content/images/2016/11/bw_crowd.jpg" alt="RNG 1.3: The Registrant Update"><p>This latest release for [RNG](<a href="https://www.drupal.org/project/rng">RNG</a> brings two major features: The ability for <strong>anonymous users to register</strong> for events. And the ability to <strong>create, and associate non-users</strong> with events.</p>
<blockquote>
<p><em>RNG is an event management module for Drupal 8 created in the spirit of <a href="https://drupal.org/project/registration">Entity Registration</a> (Drupal 7) and <a href="https://www.drupal.org/project/signup">Signup</a> (Drupal 6). Users can create registrations for events, and event managers can manage these registrations.</em></p>
</blockquote>
<p><strong>Note:</strong> This post discusses updates to the RNG project which are available in a beta release. See <a href="https://github.com/dpi/rng/issues/89">this issue</a> for how to get RNG 1.3 beta.</p>
<h1 id="registrationform">Registration form</h1>
<p>The event registration form has been reworked into a re-usable Drupal element, whilst making heavy use of AJAX. The registrant selector now accepts multiple registrants. Registrants can also be modified after the registration is created.</p>
<video width="100%" height="auto" controls autoplay loop muted>
<source src="https://danielph.in/i/dpi.id.au/rng-registrants-update/single_registrant.mp4" type="video/mp4">
</video>
<hr>
<video width="100%" height="auto" controls autoplay loop muted>
<source src="https://danielph.in/i/dpi.id.au/rng-registrants-update/multiple_registrants.mp4" type="video/mp4">
</video>
*Associate multiple registrants with a registration.*
<hr>
<video width="100%" height="auto" controls autoplay loop muted>
<source src="https://danielph.in/i/dpi.id.au/rng-registrants-update/create_registrant_inline.mp4" type="video/mp4">
</video>
*Create new registrants within the registration form.*
<hr>
<video width="100%" height="auto" controls autoplay loop muted>
<source src="https://danielph.in/i/dpi.id.au/rng-registrants-update/registrant_fields.mp4" type="video/mp4">
</video>
*Modify the meta registrant form within the registration form.*
<h1 id="anonymousregistrants">Anonymous registrants</h1>
<p>Access control has been reworked to permit anonymous users to register for events.</p>
<p><a href="https://www.drupal.org/project/rng">RNG</a> requires that all registrants for a registration are a Drupal entity. Since anonymous users do not correspond to a user entity, the <a href="https://www.drupal.org/project/rng_contact">RNG Contact</a> project provides a way to create non-user registants in a  similar fashion to how contacts work on your phone.</p>
<p>See main RNG Contact article: <a href="https://dpi.id.au/rng-contact-setup/">RNG Contact: Anonymous registrants for RNG</a>.</p>
<h1 id="morefeatures">More features</h1>
<ul>
<li>Registrant entities now have bundles</li>
<li>Added registrant type configuration entity</li>
<li>Added control over which identity types can be referenced or created within each event type.</li>
<li>Added ability to specify minimum and maximum registrants per registration.</li>
<li>Added an interface to view and add <a href="https://www.drupal.org/node/2825943#rng-fields">RNG related fields</a>.</li>
<li>Event settings pages now use the admin theme.</li>
<li>And <a href="https://www.drupal.org/project/rng/releases/8.x-1.3-beta1">many other</a> behind the scene changes.</li>
</ul>
<p><em>Cover photo: <a href="https://www.flickr.com/photos/11375837@N05/2206924369">B&amp;W Crowd</a> by whoohoo120. License CC BY 2.0</em></p>
</div>]]></content:encoded></item><item><title><![CDATA[RNG Contact: Adding an email field]]></title><description><![CDATA[<div class="kg-card-markdown"><p><a href="https://www.drupal.org/project/rng_contact">RNG Contacts</a> are regular <a href="https://www.drupal.org/project/drupal">Drupal</a> entities, which come with the ability to add fields.  To allow the contact entity to emulate the anonymous users found in <a href="https://www.drupal.org/project/registration">Entity Registration for Drupal 7</a>, you can add an email field to the contact type. Email fields are also required in order to determine</p></div>]]></description><link>https://dpi.id.au/rng-contact-email-field/</link><guid isPermaLink="false">5a9d21ab69aaa10001b11c39</guid><category><![CDATA[rng]]></category><category><![CDATA[drupal]]></category><category><![CDATA[drupal8]]></category><category><![CDATA[rng_contact]]></category><dc:creator><![CDATA[Daniel Phin]]></dc:creator><pubDate>Thu, 10 Nov 2016 04:04:19 GMT</pubDate><content:encoded><![CDATA[<div class="kg-card-markdown"><p><a href="https://www.drupal.org/project/rng_contact">RNG Contacts</a> are regular <a href="https://www.drupal.org/project/drupal">Drupal</a> entities, which come with the ability to add fields.  To allow the contact entity to emulate the anonymous users found in <a href="https://www.drupal.org/project/registration">Entity Registration for Drupal 7</a>, you can add an email field to the contact type. Email fields are also required in order to determine which address to send emails.</p>
<p><img src="https://dpi.id.au/content/images/2016/11/rng_contact_email_field.jpg" alt="Email field on RNG Contact entity"></p>
<h1 id="instructions">Instructions</h1>
<p>The email field comes with Drupal 8, there is no need to install additional modules.</p>
<h2 id="addtheemailfield">Add the email field</h2>
<ol>
<li>Go to 'RNG Contact Type' list (<em>Home » Administration  » Structure » Contact types</em>). Select 'Manage fields' operation adjacent to the contact type you wish to add the field.</li>
<li>Click 'Add field' button.</li>
<li>Under 'Add a new field', select 'Email'. Click 'Save and continue'.</li>
</ol>
<h2 id="configurethecontactforsendingemail">Configure the contact for sending email</h2>
<ol>
<li>Go to RNG Contact settings (<em>Home » Administration » Configuration » RNG Contact settings</em>).</li>
<li>Under 'Email field', select the name of the email field added in previous steps. Click 'Save configuration'</li>
</ol>
<p><img src="https://dpi.id.au/content/images/2016/11/rng_contact_email_configure.jpg" alt="Configure email field on RNG Contact entity for Courier"></p>
<h1 id="video">Video</h1>
<video width="100%" height="auto" controls autoplay loop muted>
<source src="https://danielph.in/i/dpi.id.au/rng-contact-email-field/RngContactAddEmailField.mp4" type="video/mp4">
</video></div>]]></content:encoded></item><item><title><![CDATA[RNG Contact: Anonymous registrants for RNG]]></title><description><![CDATA[<div class="kg-card-markdown"><p><em><strong>Notice:</strong> this article make use of features introduced in RNG 1.3. Upgrade before proceeding.</em></p>
<p><strong>Last updated: July 12th, 2017</strong></p>
<p><a href="https://www.drupal.org/project/rng_contact">RNG Contact</a> provides a new person type for <a href="https://www.drupal.org/project/rng">RNG</a>. It allows you to create and reference a non-user, a task an anonymous user is normally required to do. Users of</p></div>]]></description><link>https://dpi.id.au/rng-contact-setup/</link><guid isPermaLink="false">5a9d21ab69aaa10001b11c38</guid><category><![CDATA[rng]]></category><category><![CDATA[rng_contact]]></category><category><![CDATA[drupal]]></category><category><![CDATA[drupal8]]></category><dc:creator><![CDATA[Daniel Phin]]></dc:creator><pubDate>Thu, 03 Nov 2016 15:31:15 GMT</pubDate><media:content url="https://dpi.id.au/content/images/2016/11/rng_contact_header.png" medium="image"/><content:encoded><![CDATA[<div class="kg-card-markdown"><img src="https://dpi.id.au/content/images/2016/11/rng_contact_header.png" alt="RNG Contact: Anonymous registrants for RNG"><p><em><strong>Notice:</strong> this article make use of features introduced in RNG 1.3. Upgrade before proceeding.</em></p>
<p><strong>Last updated: July 12th, 2017</strong></p>
<p><a href="https://www.drupal.org/project/rng_contact">RNG Contact</a> provides a new person type for <a href="https://www.drupal.org/project/rng">RNG</a>. It allows you to create and reference a non-user, a task an anonymous user is normally required to do. Users of <a href="https://drupal.org/project/registration">Event Registration for Drupal 7</a> know this feature as anonymous registrants.</p>
<h1 id="technicalbackground">Technical background</h1>
<p><a href="https://www.drupal.org/project/rng">RNG</a> requires that all registrants for a registration are a Drupal entity. Since anonymous users do not correspond to a user entity, this module provides a way to create an entity in similar fashion to how contacts work on your phone.</p>
<h1 id="installation">Installation</h1>
<p>RNG Contact can be found on Drupal.org: <a href="https://drupal.org/project/rng_contact">https://drupal.org/project/rng_contact</a>. Install the module as usual:</p>
<p><strong>Drush</strong></p>
<pre><code class="language-sh">drush dl rng_contact &amp;&amp; drush en rng_contact --y
</code></pre>
<p><strong>Drupal Console</strong></p>
<pre><code>drupal moi rng_contact
</code></pre>
<p><strong>Composer</strong></p>
<pre><code>composer require drupal/rng_contact
</code></pre>
<h1 id="configuration">Configuration</h1>
<h2 id="enabletheentitytypeforrng">Enable the entity type for RNG</h2>
<p>Enable RNG to use the Contact type provided by RNG Contact in the main RNG settings form (<em>/admin/config/rng/settings</em>)</p>
<p><img src="https://dpi.id.au/content/images/2016/11/rng_settings.jpg" alt="RNG Contact: Anonymous registrants for RNG"></p>
<h2 id="enabletheentitytypeforcourier">Enable the entity type for Courier</h2>
<p>Enable RNG to use the Contact type provided by RNG Contact in the main RNG settings form (<em>/admin/config/rng/settings</em>)</p>
<p><img src="https://dpi.id.au/content/images/2016/12/rng_contact_courier.jpg" alt="RNG Contact: Anonymous registrants for RNG"></p>
<h2 id="createacontacttype">Create a contact type</h2>
<p>Similar to how content types work for nodes; you must create a contact type (<em>/admin/structure/rng_contact/contact_types</em>)</p>
<p><img src="https://dpi.id.au/content/images/2016/11/contact_type.jpg" alt="RNG Contact: Anonymous registrants for RNG"></p>
<p>The only field which comes with all contact types is the label field. After you create your contact type, you may want to add fields you want to display on contact creation forms, such as an email address field.</p>
<h2 id="enablethecontacttypeforyoureventtypes">Enable the contact type for your event types</h2>
<p>After creating your contact type you need to choose whether you want to allow new registrations to access existing contacts, and/or allow new registrations to create new contact types inline. I recommend enabling only the &quot;<em>Permit inline creation of entities</em>&quot; checkbox.</p>
<p><img src="https://dpi.id.au/content/images/2016/11/event_type_people_type_create.jpg" alt="RNG Contact: Anonymous registrants for RNG"></p>
<h2 id="permissions">Permissions</h2>
<p>You must grant permissions to roles so users can create new contacts.</p>
<p>Go to the <strong>RNG Contact</strong> heading on the user permissions page (<em>/admin/people/permissions</em>) and grant the &quot;Create new contact&quot; permissions.</p>
<p><img src="https://dpi.id.au/content/images/2016/11/rng_contact_perms.jpg" alt="RNG Contact: Anonymous registrants for RNG"></p>
<h2 id="registrationform">Registration form</h2>
<p>This is what you should expect to see on your event registration forms.</p>
<p><img src="https://dpi.id.au/content/images/2016/11/registration_form_with_rng_contact.jpg" alt="RNG Contact: Anonymous registrants for RNG"></p>
<p>The new contact type appears as an option in &quot;Person type&quot;, and the form to create your contact appears adjacent.</p>
<h1 id="enablingemails">Enabling emails</h1>
<p>For RNG to be able to send emails to contacts, you must add an email field and configure Courier to use this field. See the guide: <a href="https://dpi.id.au/rng-contact-email-field/">RNG Contact: Adding an email field</a></p>
</div>]]></content:encoded></item><item><title><![CDATA[RNG Progress Report]]></title><description><![CDATA[<div class="kg-card-markdown"><p>RNG has tagged numerous alpha releases and maintained stability with Drupal core. Because of this stability I will be accellerating to 1.0 by skipping beta and going straight to RC. However RC will not occur until the following requirements are satisfied:</p>
<ul>
<li>Drupal 8 must tag its first release candidate.</li></ul></div>]]></description><link>https://dpi.id.au/rng-progress-report-september-2015/</link><guid isPermaLink="false">5a9d21ab69aaa10001b11c34</guid><category><![CDATA[drupal]]></category><category><![CDATA[rng]]></category><category><![CDATA[drupalplanet]]></category><category><![CDATA[courier]]></category><category><![CDATA[drupal8]]></category><dc:creator><![CDATA[Daniel Phin]]></dc:creator><pubDate>Tue, 22 Sep 2015 09:51:09 GMT</pubDate><media:content url="https://dpi.id.au/content/images/2015/09/slrgx.jpg" medium="image"/><content:encoded><![CDATA[<div class="kg-card-markdown"><img src="https://dpi.id.au/content/images/2015/09/slrgx.jpg" alt="RNG Progress Report"><p>RNG has tagged numerous alpha releases and maintained stability with Drupal core. Because of this stability I will be accellerating to 1.0 by skipping beta and going straight to RC. However RC will not occur until the following requirements are satisfied:</p>
<ul>
<li>Drupal 8 must tag its first release candidate. <a href="http://acquia.slides.com/drupalcon/driesnote2015/fullscreen#/3/11">Supposedly in October</a>.</li>
<li>Current tests must continue to pass.</li>
<li>DER must commit <a href="https://www.drupal.org/node/2548395">base field views integration</a>, and tag a new release (beta4).</li>
<li>Courier must create a new re-usable <a href="https://github.com/dpi/courier/issues/8">template selection UI</a>.</li>
</ul>
<p>Everything should line up for a RNG RC in October or November 2015.</p>
<p><strong>Updated October 20, 2015</strong>: All requirements were satisfied, the first RNG release candidate was released on October 14th, 2015.</p>
<p><em>Cover photo (unmodified): <a href="https://en.wikipedia.org/wiki/Steam_locomotive#/media/File:Steam_locomotive_running_gear.jpg">Running gear of steam locomotive</a> by Petar Milošević. License <a href="https://creativecommons.org/licenses/by-sa/3.0/">CC BY-SA 3.0</a></em></p>
</div>]]></content:encoded></item><item><title><![CDATA[An Alpha Spotted In The Wild]]></title><description><![CDATA[<div class="kg-card-markdown"><p>After 5 months of development, <a href="https://www.drupal.org/project/rng">RNG</a> is ready for its first alpha release. A milestone where there are no major issues, and schema is not anticipated to change leading up until v1.0.</p>
<p><em>RNG is a Drupal 8 module implementing a core toolset for allowing users to register for events.</em></p></div>]]></description><link>https://dpi.id.au/rng-alpha/</link><guid isPermaLink="false">5a9d21ab69aaa10001b11c32</guid><category><![CDATA[drupal]]></category><category><![CDATA[rng]]></category><category><![CDATA[drupalplanet]]></category><category><![CDATA[drupal8]]></category><dc:creator><![CDATA[Daniel Phin]]></dc:creator><pubDate>Tue, 16 Jun 2015 19:46:30 GMT</pubDate><media:content url="https://dpi.id.au/content/images/2015/06/rsz_5472660657_0d68d020b8_o.jpg" medium="image"/><content:encoded><![CDATA[<div class="kg-card-markdown"><img src="https://dpi.id.au/content/images/2015/06/rsz_5472660657_0d68d020b8_o.jpg" alt="An Alpha Spotted In The Wild"><p>After 5 months of development, <a href="https://www.drupal.org/project/rng">RNG</a> is ready for its first alpha release. A milestone where there are no major issues, and schema is not anticipated to change leading up until v1.0.</p>
<p><em>RNG is a Drupal 8 module implementing a core toolset for allowing users to register for events. An event can be a presentation at a conference, a meetup, a class. If you need a way to associate people with a Drupal entity, take a look at RNG.</em></p>
<p>Core features of RNG:</p>
<ul>
<li><strong>Any entity type</strong> — designate any bundle (e.g <em>node type</em>) as an event type.</li>
<li><strong>Self and proxy registration</strong> — users can register themselves or other identities to the event.</li>
<li><strong>Multiple registrants</strong> — registrations can associate multiple identities.</li>
<li><strong>Messaging</strong> — messages, such as email, can be sent to registrants. Messages have token support, allowing you to recycle  field values from the related event, identity, and registration. Messages can be timed, or sent when a registration is created.</li>
<li><strong>Additional identities</strong> — the <a href="https://github.com/dpi/identity">Identity</a> module allows you to register non-users. It is modeled like an address book, where contacts are added, and then made available as an option on the registration form.</li>
</ul>
<p>Theres still a <a href="https://github.com/dpi/rng/milestones/rng-8.0-1.0">few things</a> that will make it in before 1.0 final. Including improved Views integration, and improved/full test coverage.</p>
<p>I work on RNG in my own time. If you want to help out, don't hesitate in posting in the <a href="https://github.com/dpi/rng/issues">issue queue</a> or <a href="http://dpi.id.au/contact/">contacting me</a> directly.</p>
<p><strong>Need help getting setup? See <a href="http://dpi.id.au/rng-quick-start/">Quick Start</a>.</strong></p>
<p><strong><a href="https://www.drupal.org/project/rng">Download the module</a> on drupal.org.</strong></p>
<p><em>Cover photo: <a href="https://www.flickr.com/photos/_sjg_/5472660657">Seedling</a> by sjg. License <a href="https://creativecommons.org/licenses/by-nc/2.0/">CC BY-NC 2.0</a></em></p>
</div>]]></content:encoded></item><item><title><![CDATA[RNG Quick Start]]></title><description><![CDATA[<div class="kg-card-markdown"><p>This is a quick guide to getting RNG set up.</p>
<p><em>RNG is an event management module for Drupal 8 created in the spirit of <a href="https://drupal.org/project/registration">Entity Registration</a> (Drupal 7) and <a href="https://www.drupal.org/project/signup">Signup</a> (Drupal 6). Users can create registrations for events, and event managers can manage these registrations.</em></p>
<p><strong>Updated November 15th, 2016 for</strong></p></div>]]></description><link>https://dpi.id.au/rng-quick-start/</link><guid isPermaLink="false">5a9d21ab69aaa10001b11c31</guid><category><![CDATA[drupal]]></category><category><![CDATA[rng]]></category><dc:creator><![CDATA[Daniel Phin]]></dc:creator><pubDate>Sun, 01 Mar 2015 17:07:24 GMT</pubDate><content:encoded><![CDATA[<div class="kg-card-markdown"><p>This is a quick guide to getting RNG set up.</p>
<p><em>RNG is an event management module for Drupal 8 created in the spirit of <a href="https://drupal.org/project/registration">Entity Registration</a> (Drupal 7) and <a href="https://www.drupal.org/project/signup">Signup</a> (Drupal 6). Users can create registrations for events, and event managers can manage these registrations.</em></p>
<p><strong>Updated November 15th, 2016 for RNG 1.3</strong></p>
<h1 id="installation">Installation</h1>
<p>RNG requires Drupal 8.1 or later. Download <a href="https://www.drupal.org/project/rng"> RNG</a> and its dependencies: <a href="https://drupal.org/project/dynamic_entity_reference">Dynamic Entity Reference</a>, <a href="https://drupal.org/project/unlimited_number">Unlimited Number</a>, and <a href="https://www.drupal.org/project/courier">Courier</a>.</p>
<p><strong>Drush</strong></p>
<pre><code class="language-sh">drush dl rng &amp;&amp; drush en rng --y
</code></pre>
<p><strong>Drupal Console</strong></p>
<pre><code>drupal moi rng #or
drupal moi rng --composer
</code></pre>
<p><strong>Composer</strong></p>
<pre><code>composer require drupal/rng
</code></pre>
<h1 id="configuration">Configuration</h1>
<h2 id="addeventtype">Add Event Type</h2>
<p>Once installed and enabled, an Event Type must be created. Go to the event type configuration page at <em>Admin » Structure » Event types</em>.</p>
<ol>
<li>Click <strong>Add event type</strong> button.</li>
<li>Select <strong>Create a new content type</strong>. The Node module must be enabled for this option to appear. It can be enabled at <em>Admin » Extend</em>.</li>
<li>Select a default registrant type.</li>
<li>Allow the user entity type to register.</li>
<li>Save the form</li>
</ol>
<p><img src="https://danielph.in/i/dpi.id.au/rng-quick-start/rng_1_3_event_1.png" alt="Add event type"></p>
<h2 id="addregistrationtype">Add Registration Type</h2>
<p>A registration type is a template for the form the user will fill when registering for an event. You need at least one registration type to enable new registrations. Go to the registration type configuration page at <em>Admin » Structure » Registration types</em>.</p>
<ol>
<li>Click <strong>Add registration type</strong> button.</li>
<li>Assign a label to the registration type.</li>
<li>Save the form</li>
</ol>
<p><img src="https://danielph.in/i/dpi.id.au/rng-quick-start/registration_types_3.png" alt="Add registration type"></p>
<h1 id="createanevent">Create an Event</h1>
<p>To test everything is working, create a new event. If your event type is a Node, navigate to <em>Create content</em> and add a new node.</p>
<p><img src="https://danielph.in/i/dpi.id.au/rng-quick-start/event_1.png" alt="Add registration type"></p>
<p>An <em>Event</em> tab will appear after saving your event.</p>
<p>Minimum configuration for allowing new registrations on an event:</p>
<ul>
<li><strong>☑</strong> Accepting new registrations</li>
<li>Set <em>Registration type</em> to any available option.</li>
</ul>
<p><img src="https://danielph.in/i/dpi.id.au/rng-quick-start/rng_1_3_event_3.png" alt="Add registration type"></p>
<p>After saving these options, a <em>Register</em> tab will on the  event page.</p>
<h1 id="permissions">Permissions</h1>
<p>RNG includes permissions which affect ability for users to register. Change permissions prefixed with &quot;Register  &quot;.</p>
<p><img src="https://danielph.in/i/dpi.id.au/rng-quick-start/rng_1_3_permissions.png" alt="RNG user permissions"></p>
</div>]]></content:encoded></item></channel></rss>