Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module ›

fileshare modul ordner erstellen verbieten

Eingetragen von Anonymous (0)
am 20.03.2007 - 13:03 Uhr in
  • Module

Hi,

Ich möchte auf meiner Seite einen regen Datenaustausch haben. Ich will das user Daten in bestimmte Ordner Strukturen uploaden und auch wieder downloaden können. Dazu habe ich das fileshare Module verwendet, da es grafisch sehr ansprechend überischtlich und einfach zu bedienen ist.
Das problem ist nur das die user nicht nur daten über das fileshare interface uploaden können, nein sie können auch Ordner erstellen, was ich ihnen aber verbieten möchte. In der Access Controll finde ich aber keien eigenen eintrag. Deswegen weiß ich nicht mehr weiter.
Kann man das Modul vielleicht dementsprechend modifizieren. wenn ja wie?
Oder ist vielleicht ein anderes Modul sinnvoller?

Fragen über fragen

Danke schon mal im vorraus für eure Hilfe

MfG
Don Durito

‹ Suche Upload/Download-Section-Modul Reihenfolge im ProfileModul ändern... ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Habs nicht getestet, sollte

Eingetragen von elias (72)
am 20.03.2007 - 14:53 Uhr

Habs nicht getestet, sollte aber mit folgenden Anpassungen am fileshare.module klappen:

Füge zum hook_perm einen punkt «create directories» hinzu:

<?php
/**
* Implementation of hook_perm().
*
* Since we are limiting the ability to create new nodes to certain users,
* we need to define what those permissions are here. We also define a permission
* to allow users to edit the nodes they created.
*/
function fileshare_perm() {
  return array(
'create fileshares'
   
,'set file paths'
   
,'modify files'
   
,'download files'
   
,'manage own fileshares'
   
, 'create directories'
 
);
}
?>

Nun findest du in der Access Controll einen Eintrag «create directories»

Beim Upload-Formular prüfen wir nun an der entsprechenden Stelle, ob der Benutzer das Recht hat, neue Ordner zu erstellen und geben diese Formularelemente nur dann aus.

<?php
/**
* File upload form on view node
*/
function _uploadform($node) {
 
$form['#attributes'] = array(
   
'enctype' => 'multipart/form-data',
   
'class' => 'node-form',
   
'style' => 'display:none'
   
);
 
$form['file'] = array(
   
'#type' => 'fieldset',
   
'#title' => t('Upload and New Folder Options'),
   
'#collapsible' => TRUE,
   
'#collapsed' => FALSE,
   
'#description' => t('The "target" folder will receive file uploads, or may be deleted.')
    );
 
$form['file']['targetdir'] = array(
   
'#type' => 'select',
   
'#title' => t('Select a target folder'),
   
'#options' => array(),
   
'#description' => t('Choose from the list of opened folders. This menu will update to reflect the folders shown above.'),
   
'#DANGEROUS_SKIP_CHECK' => TRUE,
    );
 
$form['file']['filename'] = array(
   
'#type' => 'file',
   
'#title' => t('Upload a file to target directory'),
   
'#size' => 30,
   
'#description' => t('Click "Browse..." to select a file to upload into the target folder.
      <em>%upload_max maximum file size.</em>'
,
      array(
'%upload_max' => ini_get('upload_max_filesize'))),
      );
 
$form['file']['submit'] = array('#type' => 'submit', '#value' => t('Upload'));

// Zeige Formularelemente zum Erstellen neuer Ordner nur wenn der Benutzer die entsprechenden Rechte hat
if (user_access('create directories')) {
 
$form['file']['dirname'] = array(
   
'#type' => 'textfield',
   
'#title' => t('New folder name'),
   
'#description' => t('Enter the folder name you wish to create. New folders will appear in the selected target.'),
    );
 
$form['file']['create'] = array('#type' => 'submit', '#value' => t('New folder'));
}

 
$form['file']['root'] = array('#type' => 'hidden', '#value' => $node->_basepath.$node->_filepath);
 
$form['file']['nid'] = array('#type' => 'hidden', '#value' => $node->nid);
  return
$form;
}
?>

Gruss Elias

  • Anmelden oder Registrieren um Kommentare zu schreiben

Danke

Eingetragen von dondurito (nicht überprüft) (0)
am 20.03.2007 - 15:24 Uhr

Hat super funktioniert, und war klasse erklärt.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • lqunojlhtnjh
  • Meldung zu Token im Statusbericht
  • Fehlermeldung: Deprecated function
  • Versenden von Anfragen per Webform
  • Goodbye Online Drupal Meetup Germany - Hello Drupal DACH Online Meetup!
  • Übersetzte Felder bei Inhaltstyp automatisch übernehmen
  • Content Ex-/Import
  • RESTful Path request will nicht
  • Modulupdate per Webinterace scheitert an authorize.php und access denied für Admin-User
  • Wer ist online Block
  • Doppelte Anzeige von Node im View
  • URL-Alias von bestehendem Link wird gelöscht und auf -0 gesetzt 404 Fehler entsteht
Weiter

Neue Kommentare

  • Gut zu wissen. Demnächst
    vor 13 Stunden 42 Minuten
  • Token Fehler behoben
    vor 14 Stunden 1 Minute
  • Du hast völlig recht, da habe
    vor 18 Stunden 59 Minuten
  • Link 404
    vor 22 Stunden 37 Minuten
  • Die Datei existiert ja auch
    vor 1 Tag 1 Stunde
  • Patch für Metatag
    vor 1 Tag 2 Stunden
  • Link auf Pfad/Menü eines View
    vor 1 Tag 2 Stunden
  • Die englische Übersetzung
    vor 1 Tag 4 Stunden
  • Genau das habe ich auch
    vor 2 Tagen 1 Stunde
  • Tja, das kann ich wirklich
    vor 2 Tagen 1 Stunde

Statistik

Beiträge im Forum: 245968
Registrierte User: 18827

Neue User:

  • rtyfivad
  • finnster
  • Damian1802

» Alle User anzeigen

User nach Punkten sortiert:
wla9010
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3916
ronald3829
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 3 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association