Clean code

This commit is contained in:
Thomas Müller 2015-09-24 11:03:01 +02:00
parent af39e59e88
commit 5a11e145da
1 changed files with 66 additions and 56 deletions

View File

@ -37,31 +37,39 @@ require_once __DIR__.'/template/functions.php';
* This class provides the templates for ownCloud. * This class provides the templates for ownCloud.
*/ */
class OC_Template extends \OC\Template\Base { class OC_Template extends \OC\Template\Base {
private $renderas; // Create a full page?
/** @var string */
private $renderAs; // Create a full page?
/** @var string */
private $path; // The path to the template private $path; // The path to the template
/** @var array */
private $headers = array(); //custom headers private $headers = array(); //custom headers
/** @var string */
protected $app; // app id protected $app; // app id
/** /**
* Constructor * Constructor
* @param string $app app providing the template * @param string $app app providing the template
* @param string $name of the template file (without suffix) * @param string $name of the template file (without suffix)
* @param string $renderas = ""; produce a full page * @param string $renderAs = ""; produce a full page
* @param bool $registerCall = true * @param bool $registerCall = true
* @return OC_Template object * @return OC_Template object
* *
* This function creates an OC_Template object. * This function creates an OC_Template object.
* *
* If $renderas is set, OC_Template will try to produce a full page in the * If $renderAs is set, OC_Template will try to produce a full page in the
* according layout. For now, renderas can be set to "guest", "user" or * according layout. For now, $renderAs can be set to "guest", "user" or
* "admin". * "admin".
*/ */
protected static $initTemplateEngineFirstrun = true; protected static $initTemplateEngineFirstRun = true;
public function __construct( $app, $name, $renderas = "", $registerCall = true ) { public function __construct( $app, $name, $renderAs = "", $registerCall = true ) {
// Read the selected theme from the config file // Read the selected theme from the config file
$this->initTemplateEngine(); self::initTemplateEngine();
$theme = OC_Util::getTheme(); $theme = OC_Util::getTheme();
@ -74,7 +82,7 @@ class OC_Template extends \OC\Template\Base {
list($path, $template) = $this->findTemplate($theme, $app, $name); list($path, $template) = $this->findTemplate($theme, $app, $name);
// Set the private data // Set the private data
$this->renderas = $renderas; $this->renderAs = $renderAs;
$this->path = $path; $this->path = $path;
$this->app = $app; $this->app = $app;
@ -82,7 +90,7 @@ class OC_Template extends \OC\Template\Base {
} }
public static function initTemplateEngine() { public static function initTemplateEngine() {
if (self::$initTemplateEngineFirstrun){ if (self::$initTemplateEngineFirstRun){
//apps that started before the template initialization can load their own scripts //apps that started before the template initialization can load their own scripts
//so to make sure this scripts here are loaded first we use OC_Util::addScript() with $prepend=true //so to make sure this scripts here are loaded first we use OC_Util::addScript() with $prepend=true
@ -113,7 +121,7 @@ class OC_Template extends \OC\Template\Base {
} }
OC_Util::addScript('oc-backbone', null, true); OC_Util::addScript('oc-backbone', null, true);
OC_Util::addVendorScript ( 'core', 'backbone/backbone', null, true ); OC_Util::addVendorScript('core', 'backbone/backbone', true);
OC_Util::addVendorScript('snapjs/dist/latest/snap', null, true); OC_Util::addVendorScript('snapjs/dist/latest/snap', null, true);
OC_Util::addScript('mimetypelist', null, true); OC_Util::addScript('mimetypelist', null, true);
OC_Util::addScript('mimetype', null, true); OC_Util::addScript('mimetype', null, true);
@ -147,7 +155,7 @@ class OC_Template extends \OC\Template\Base {
throw new \Exception('Cannot read core/js/core.json'); throw new \Exception('Cannot read core/js/core.json');
} }
self::$initTemplateEngineFirstrun = false; self::$initTemplateEngineFirstRun = false;
} }
} }
@ -195,14 +203,14 @@ class OC_Template extends \OC\Template\Base {
* Process the template * Process the template
* @return boolean|string * @return boolean|string
* *
* This function process the template. If $this->renderas is set, it * This function process the template. If $this->renderAs is set, it
* will produce a full page. * will produce a full page.
*/ */
public function fetchPage() { public function fetchPage() {
$data = parent::fetchPage(); $data = parent::fetchPage();
if( $this->renderas ) { if( $this->renderAs ) {
$page = new OC_TemplateLayout($this->renderas, $this->app); $page = new OC_TemplateLayout($this->renderAs, $this->app);
// Add custom headers // Add custom headers
$headers = ''; $headers = '';
@ -218,18 +226,20 @@ class OC_Template extends \OC\Template\Base {
} }
} }
$page->assign('headers', $headers, false); $page->assign('headers', $headers);
$page->assign('content', $data, false ); $page->assign('content', $data);
return $page->fetchPage(); return $page->fetchPage();
} }
else{
return $data; return $data;
} }
}
/** /**
* Include template * Include template
*
* @param string $file
* @param array|null $additionalParams
* @return string returns content of included template * @return string returns content of included template
* *
* Includes another template. use <?php echo $this->inc('template'); ?> to * Includes another template. use <?php echo $this->inc('template'); ?> to
@ -299,7 +309,7 @@ class OC_Template extends \OC\Template\Base {
/** /**
* print error page using Exception details * print error page using Exception details
* @param Exception|Error $exception * @param Exception $exception
*/ */
public static function printExceptionErrorPage($exception) { public static function printExceptionErrorPage($exception) {
$request = \OC::$server->getRequest(); $request = \OC::$server->getRequest();