Definition

imce_sorted_roles()
imce/inc/admin.inc, line 593

Description

Sort roles according to their weights.

Code

<?php
function imce_sorted_roles() {
  static $sorted;
  if (!isset($sorted)) {
    $sorted = array();
    $roles = user_roles();
    $profiles = variable_get('imce_profiles', array());
    $irp = variable_get('imce_roles_profiles', array());
    $irp[DRUPAL_ANONYMOUS_RID]['weight'] = 12;
    $irp[DRUPAL_AUTHENTICATED_RID]['weight'] = 11;
    foreach ($roles as $rid => $rname) {
      $sorted[$rid] = array(
        'name' => $rname,
        'weight' => isset($irp[$rid]['weight']) ? $irp[$rid]['weight'] : 0,
        'pid' => isset($irp[$rid]['pid']) && isset($profiles[$irp[$rid]['pid']]) ? $irp[$rid]['pid'] : 0,
      );
    }
    uasort($sorted, 'imce_rolesort');
  }
  return $sorted;
}
?>