*

Offline Jo

  • *****
  • 227
  • Geschlecht: Männlich
    • JoLichter.de
User Media Sources
« am: 08. April 2012, 10:10:19 »
Ziel: Jeder User soll unter MODx Revo 2.2 oder höher sein eigenen Media Sources Ordner bekommen.

Dazu lege ich für jeden User unter "assets/content/user/" einen Ordner mit dessen User ID an, z.B.: "assets/content/user/2/"

Dann noch ein Snippet getUserID
<?php
//return userid
return $modx->user->get('id');

und in der entsprechenden Media Source (z.B. myFolder) als basePath und baseUrl assets/content/user/[[getUserID]]/ eintragen.

Im TAB Access Permissions z.B.
Administrator - Super User - Media Source Admin
Manager - Editor - Media Source Admin

eintragen und Flush Permissions nicht vergessen  :wink:



Wer will kann sich den User-Ordner automatisch anlegen lassen.
Snippet getUserID
<?php
//get userid
//$UserID = $modx->user->get('id');
$UserID $modx->getLoginUserID('mgr');

//check proper path alignment!
$users_folder $modx->getOption('assets_path').'content/user/'.$UserID.'/';
//$modx->log(modX::LOG_LEVEL_ERROR,$users_folder);


//create an user folder
if (!file_exists($users_folder)){
    
mkdir($users_folder,0755);
    }

return 
$UserID;


Unter den Users Settings dann noch per 'default_media_source' eine Media Sources zuordnen, damit der User diese direkt als Auswahl bekommt und fertg  :cool:
« Letzte Änderung: 31. Mai 2019, 18:37:35 von Jo »