secure_permissions_export

Versions
secure_permissions
secure_permissions_export(&$form_state)

Page callback to generate roles and permissions in code.

Code

./secure_permissions.module, line 292

<?php
function secure_permissions_export(&$form_state) {
  // Rebuild the permissions, if necessary.
  secure_permissions_rebuild();
  $form = array();
  $form['help'] = array(
    '#markup' => t('Copy and paste this output into two custom module functions. The first, <em>HOOK_secure_permissions_roles()</em> defines the roles in use by the site. The second, <em>HOOK_secure_permissions()</em> controls the permissions for the site. You will need to rename these functions to suit your module.'),
  );
  $output = '';
  // Get roles.
  $roles = user_roles();
  $output .= 'function HOOK_secure_permissions_roles() {';
  $output .= "\n  return array(\n";
  foreach ($roles as $role) {
    $output .= "    '" . $role ."',\n";
  }
  $output .= "  );";
  $output .= "\n}\n\n";
  // Now get permissions.
  $output .= 'function HOOK_secure_permissions($role) {';
  $output .= "\n  \$permissions = array(\n";
  foreach ($roles as $rid => $role) {
    $output .= "    '$role' => array(\n";
    $permissions = permissions_get_permissions_for_role($role);
    foreach ($permissions as $key => $permission) {
      $output .= "      '$permission',\n";
    }
    $output .= "    ),\n";
  }
  $output .= "  );\n";
  $output .= "  if (isset(\$permissions[\$role])) {";
  $output .= "\n    return \$permissions[\$role];\n";
  $output .= "  }\n";
  $output .= "}";
  $form['export'] = array(
    '#title' => t('Permissions output'),
    '#type' => 'textarea',
    '#cols' => 40,
    '#rows' => 80,
    '#default_value' => $output,
  );
  return $form;
}
?>

Contact

  • agentrickard [at] gmail [dot] com

Donations

My Amazon.com Wish List