| 
							- <?php
 - 
 - namespace dokuwiki\ChangeLog;
 - 
 - /**
 -  * Class MediaChangeLog; handles changelog of a media file
 -  */
 - class MediaChangeLog extends ChangeLog
 - {
 -     /**
 -      * Returns path to changelog
 -      *
 -      * @return string path to file
 -      */
 -     protected function getChangelogFilename()
 -     {
 -         return mediaMetaFN($this->id, '.changes');
 -     }
 - 
 -     /**
 -      * Returns path to current page/media
 -      *
 -      * @param string|int $rev empty string or revision timestamp
 -      * @return string path to file
 -      */
 -     protected function getFilename($rev = '')
 -     {
 -         return mediaFN($this->id, $rev);
 -     }
 - 
 -     /**
 -      * Returns mode
 -      *
 -      * @return string RevisionInfo::MODE_PAGE
 -      */
 -     protected function getMode()
 -     {
 -         return RevisionInfo::MODE_MEDIA;
 -     }
 - 
 - 
 -     /**
 -      * Adds an entry to the changelog
 -      *
 -      * @param array $info    Revision info structure of a media file
 -      * @param int $timestamp log line date (optional)
 -      * @return array revision info of added log line
 -      *
 -      * @see also addMediaLogEntry() in inc/changelog.php file
 -      */
 -     public function addLogEntry(array $info, $timestamp = null)
 -     {
 -         global $conf;
 - 
 -         if (isset($timestamp)) unset($this->cache[$this->id][$info['date']]);
 - 
 -         // add changelog lines
 -         $logline = static::buildLogLine($info, $timestamp);
 -         io_saveFile(mediaMetaFN($this->id, '.changes'), $logline, $append = true);
 -         io_saveFile($conf['media_changelog'], $logline, $append = true); //global changelog cache
 - 
 -         // update cache
 -         $this->currentRevision = $info['date'];
 -         $info['mode'] = $this->getMode();
 -         $this->cache[$this->id][$this->currentRevision] = $info;
 -         return $info;
 -     }
 - }
 
 
  |