Pre-select a role on user register form and hide from display? I have this scenario that I am trying to walk through. I am new to creating custom modules, but I'm working on it (only way to learn...right?)

How would I go about doing this as I'm currently getting an error when trying. I have a role: 'venue admin' that will be responsible for adding other users with the role of 'customer'. I already am using the module: Role Delegation to handle the permissions side of things. But on the User Registration screen, I would like the customer role to be pre-selected and hidden from display.

This is what I have so far:

/**
 * Implements hook_form_FORM_ID_alter().
 *
 */

function mandatory_role_form_user_register_form_alter(&amp;$form, &amp;$form_state,   &amp;$form_id) { 
global $user;

if(in_array('venue admin', $user-&gt;roles)) {   
// by default notify user of new account is checked  
    $form['account']['notify']['#default_value'] = TRUE;
// the only role the venue admin role can create is a customer so this is checked and hidden.
    $form['account']['roles']['#access'] = FALSE;
  }
}


obviously, this is not complete and missing the ability to set the role. Any suggestions?
well..after staring at this question and trying a bunch of things on my own I think I stumbled upon the answer. Using HOOK_user_presave did the trick! This helped immensely: https://drupal.stackexchange.com/a/79065/28353 

function mandatory_role_user_presave(&amp;$edit, $account, $category) {
global $user;
if(in_array('venue admin', $user-&gt;roles)) {
  if($account -&gt;is_new) {
    $roles = user_roles(TRUE);
    $rid = array_search('customer', $roles);
    if($rid != FALSE) {
      $edit['roles'][$rid] = 1;
        }
      }
    }
  }