$this->
prepareInstallDirectory($filetransfer,
$args['install_dir'
]);
if (is_dir($args['install_dir'
] . '/' .
$this->name
)) { // Remove the existing installed file.
$filetransfer->
removeDirectory($args['install_dir'
] . '/' .
$this->name
);
} // Copy the directory in place.
$filetransfer->
copyDirectory($this->source,
$args['install_dir'
]);
// Make sure what we just installed is readable by the web server.
$this->
makeWorldReadable($filetransfer,
$args['install_dir'
] . '/' .
$this->name
);
// Run the updates.
// @todo Decide if we want to implement this.
$this->
postUpdate();
// For now, just return a list of links of things to do.
return $this->
postUpdateTasks();
} catch (FileTransferException
$e) { throw new UpdaterFileTransferException("File Transfer failed, reason: '" .
strtr($e->
getMessage(),
$e->arguments
) . "'"
);
} }