2017-10-20 12 views
0

Sur mon site Drupal 7, je cherche un moyen de permettre uniquement aux utilisateurs ayant un rôle spécifique de télécharger des fichiers PDF. Cependant, tous les utilisateurs pourront télécharger d'autres types de fichiers (par exemple, jpg, mp4).Drupal: Limiter les téléchargements de fichiers par autorisation

Existe-t-il un module ou un code disponible qui peut accomplir cet outil pour moi?

Répondre

0

Vous n'avez pas besoin d'un module pour cela. Vous pouvez écrire un hook_form_alter et procédez comme suit

1. add help-text based on role. 
if role = 1 
#form['field_name']['#description'] = t('Help test 1') 
elseif role = 2 
#form['field_name']['#description'] = t('Help test 2') 
  1. Ajouter une validation personnalisée pour vérifier l'extension de fichier en fonction des rôles.

    $ form ['# validate'] [] = 'valider_fonction'; fonction validate_function si le rôle = 1 Valider le type de fichier 1 rôle elseif = 2 Valider le type de fichier 2

acclamations!

+0

Pouvez-vous préciser votre réponse –

0

Pour cela, vous pouvez utiliser hook_form_alter.

charge votre objet utilisateur

global $user; 
$valid_role = 'yourGivenRole'; 

if(in_array($valid, $user->roles)){ 
    $form['field_name']['und'][0]['#upload_validators']['file_validate_extensions'][0] = 'pdf'; 
}