Knowledgebase:FAQ:Mediamanager
Dieser Artikel beschreint die Software Contrexx. Das neue Handbuch zu Cloudrexx wird unter support.cloudrexx.com bereit gestellt.
Allgemeines
- Installation / Update
- Lizenzdiskussionen
- Mehrsprachigkeit
- Übersetzungen
- Verschiedenes
- WYSIWYG-Editor
- Wartung
Design & Navigation
Module
- Neue Module erstellen
- Community
- Directory
- Dokumenten System
- Galerie
- Gästebuch
- Kalender
- Kontaktformular
- Mediamanager
- News
- Newsletter
- News-Syndication
- Podcast
- Seitenempfehlung
- Sitemap
- Voting
Fehlerbehebung
Contents
Keine Datei-Symbole im Mediamanger
Frage
Mir ist aufgefallen, dass es zum Modul diverse GIF-Bilder, passend zu Dateiendungen, gibt. Weiss jemand, warum diese bei mir nicht angezeigt werden?
Antwort
Allem Anschein nach wurden die Bilder nicht richtig auf den Server geladen. Lade doch einfach nochmals alle Dateien des Verzeichnis /images/modules/* auf den Server.
Weitere Dateisymbole hinzufügen
Frage
Wie kann ich die Dateisymbole erweiteren?
Antwort
Für alle Dateiendungen, die kein entsprechendes GIF-Bild in 999images/module/media999 besitzen, nimmt Contrexx automatisch _blank.gif! Es muss also nur ein Bild mit dem entsprechenden Namen in diesen Ordner kopiert werden.
Beispiel: MP3 -> mp3.gif MOV => mov.gif
Ordner verstecken
Frage
Gibt es eine Möglichkeit, Ordner mit bestimmten Namen beim Inhaltslisting des Media-Manager auszublenden?
Antwort
Dazu öffnest Du das File core_modules/media/index.class.php und suchst folgenden Block (Zeile ~182-212):
for($x = 0; $x < count($dirTree[$key]['icon']); $x++){
$class = ($i % 2) ? 'row2' : 'row1';
$this->_objTpl->setVariable(array( // file
'MEDIA_DIR_TREE_ROW' => $class,
'MEDIA_FILE_ICON' => $this->iconWebPath . $dirTree[$key]['icon'][$x] . '.gif',
'MEDIA_FILE_NAME' => $dirTree[$key]['name'][$x],
'MEDIA_FILE_SIZE' => $this->_formatSize($dirTree[$key]['size'][$x]),
'MEDIA_FILE_TYPE' => $this->_formatType($dirTree[$key]['type'][$x]),
'MEDIA_FILE_DATE' => $this->_formatDate($dirTree[$key]['date'][$x]),
));
if($key == 'dir'){
$tmpHref= '?section=' . $this->archive . '&path=' . $this->webPath . $dirTree[$key]['name'][$x] . '/';
}
elseif($key == 'file'){
if($this->_isImage($this->path . $dirTree[$key]['name'][$x])){
$tmpSize = getimagesize($this->path . $dirTree[$key]['name'][$x]);
$tmpHref = 'javascript: preview(\'' . $this->webPath . $dirTree[$key]['name'][$x] . '\', ' . $tmpSize[0] . ', ' . $tmpSize[1] . ');';
}else{
$tmpHref = '?section=' . $this->archive . '&act=download&path=' . $this->webPath . '&file='. $dirTree[$key]['name'][$x];
}
}
$this->_objTpl->setVariable(array(
'MEDIA_FILE_NAME_HREF' => $tmpHref
));
$this->_objTpl->parse('mediaDirectoryTree');
$i++;
}
Diesen änderst Du wie folgt ab:
for($x = 0; $x < count($dirTree[$key]['icon']); $x++){
$class = ($i % 2) ? 'row2' : 'row1';
if ($dirTree[$key]['name'][$x] != 'BEISPIEL') {
$this->_objTpl->setVariable(array( // file
'MEDIA_DIR_TREE_ROW' => $class,
'MEDIA_FILE_ICON' => $this->iconWebPath . $dirTree[$key]['icon'][$x] . '.gif',
'MEDIA_FILE_NAME' => $dirTree[$key]['name'][$x],
'MEDIA_FILE_SIZE' => $this->_formatSize($dirTree[$key]['size'][$x]),
'MEDIA_FILE_TYPE' => $this->_formatType($dirTree[$key]['type'][$x]),
'MEDIA_FILE_DATE' => $this->_formatDate($dirTree[$key]['date'][$x]),
));
if($key == 'dir'){
$tmpHref= '?section=' . $this->archive . '&path=' . $this->webPath . $dirTree[$key]['name'][$x] . '/';
}
elseif($key == 'file'){
if($this->_isImage($this->path . $dirTree[$key]['name'][$x])){
$tmpSize = getimagesize($this->path . $dirTree[$key]['name'][$x]);
$tmpHref = 'javascript: preview(\'' . $this->webPath . $dirTree[$key]['name'][$x] . '\', ' . $tmpSize[0] . ', ' . $tmpSize[1] . ');';
}else{
$tmpHref = '?section=' . $this->archive . '&act=download&path=' . $this->webPath . '&file='. $dirTree[$key]['name'][$x];
}
}
$this->_objTpl->setVariable(array(
'MEDIA_FILE_NAME_HREF' => $tmpHref
));
$this->_objTpl->parse('mediaDirectoryTree');
$i++;
}
}
Dadurch wird der Ordner mit dem Namen BEISPIEL nicht länger gelistet.
Mehr als 3 Media-Archive
Frage
Gibt es die Möglichkeit, einen 4. Ordner zu erstellen?
Antwort
Jawohl, das geht wie folgt:
- Per FTP einen Ordner (media/archive4) erstellen
- Die Datei config/set_constants.php mit folgenden Zeilen ergänzen:
define('ASCMS_MEDIA4_PATH', ASCMS_DOCUMENT_ROOT.'/media/archive4');
define('ASCMS_MEDIA4_WEB_PATH', ASCMS_PATH_OFFSET.'/media/archive4');
- Die Datei core_modules/media/admin.class.php anpassen. Die entsprechenden Zeilen (~84) sollten einfach zu finden sein.
$this->arrPaths = array(ASCMS_MEDIA1_PATH . '/',
ASCMS_MEDIA2_PATH . '/',
ASCMS_MEDIA3_PATH . '/',
ASCMS_MEDIA4_PATH . '/',
ASCMS_CONTENT_IMAGE_PATH . '/',
ASCMS_THEMES_PATH . '/');
$this->arrWebPaths = array('archive1' => ASCMS_MEDIA1_WEB_PATH . '/',
'archive2' => ASCMS_MEDIA2_WEB_PATH . '/',
'archive3' => ASCMS_MEDIA3_WEB_PATH . '/',
'archive4' => ASCMS_MEDIA4_WEB_PATH . '/',
'content' => ASCMS_CONTENT_IMAGE_WEB_PATH . '/',
'themes' => ASCMS_THEMES_WEB_PATH . '/');
- Und dann noch die Zeile ~130 im selben File anpassen:
$objTemplate->setVariable('CONTENT_NAVIGATION', '
<a href="index.php?cmd=media&archive=archive1">'. $_ARRAYLANG['TXT_MEDIA_ARCHIVE'] .' #1</a>
<a href="index.php?cmd=media&archive=archive2">'. $_ARRAYLANG['TXT_MEDIA_ARCHIVE'] .' #2</a>
<a href="index.php?cmd=media&archive=archive3">'. $_ARRAYLANG['TXT_MEDIA_ARCHIVE'] .' #3</a>
<a href="index.php?cmd=media&archive=archive4">'. $_ARRAYLANG['TXT_MEDIA_ARCHIVE'] .' #4</a>
');
- Die Datei core_modules/media/index.class.php anpassen. Zeile ist ~63.
$this->arrPaths = array(ASCMS_MEDIA1_PATH . '/',
ASCMS_MEDIA2_PATH . '/',
ASCMS_MEDIA3_PATH . '/',
ASCMS_MEDIA4_PATH . '/');
$this->arrWebPaths = array('media1' => ASCMS_MEDIA1_WEB_PATH . '/',
'media2' => ASCMS_MEDIA2_WEB_PATH . '/',
'media3' => ASCMS_MEDIA3_WEB_PATH . '/',
'media4' => ASCMS_MEDIA4_WEB_PATH . '/');
- In der Datenbank in der Tabelle contrexx_modules folgende Zeile einfügen.
INSERT INTO `contrexx_modules` VALUES (32, 'media4', 'TXT_MEDIA_MODULE_DESCRIPTION', 'y', 0, 1);
- Datei index.php (Hauptverzeichnis) öffnen und folgende Anpassung auf Zeile ~450 durchführen:
//-------------------------------------------------------
// media Core
//-------------------------------------------------------
case "media1":
case "media2":
case "media3":
case "media4":
if(!isset($sessionObj)|| !is_object($sessionObj)) $sessionObj = &new cmsSession();
$modulespath = ASCMS_CORE_MODULE_PATH . '/media/index.class.php';
if (file_exists($modulespath)) require_once($modulespath);
else die ($_CORELANG['TXT_THIS_MODULE_DOESNT_EXISTS']);
$objMedia = &new MediaManager($page_content, $section);
$objTemplate->setVariable('CONTENT_TEXT', $objMedia->getMediaPage());
break;
- Zu guter letzt im Content-Manger eine analoge Seite zu "Media Archiv #2" oder "Media Archiv #3" erstellen. Achtung: Unter Erweiterte Optionen das Modul "Media 4" auswählen!