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
@ -93,44 +101,44 @@ class OC_Template extends \OC\Template\Base {
} }
} }
OC_Util::addStyle ( "styles" ); OC_Util::addStyle("styles");
OC_Util::addStyle ( "header" ); OC_Util::addStyle("header");
OC_Util::addStyle ( "mobile" ); OC_Util::addStyle("mobile");
OC_Util::addStyle ( "icons" ); OC_Util::addStyle("icons");
OC_Util::addStyle ( "fonts" ); OC_Util::addStyle("fonts");
OC_Util::addStyle ( "apps" ); OC_Util::addStyle("apps");
OC_Util::addStyle ( "fixes" ); OC_Util::addStyle("fixes");
OC_Util::addStyle ( "multiselect" ); OC_Util::addStyle("multiselect");
OC_Util::addVendorStyle ( 'jquery-ui/themes/base/jquery-ui'); OC_Util::addVendorStyle('jquery-ui/themes/base/jquery-ui');
OC_Util::addStyle ( 'jquery-ui-fixes' ); OC_Util::addStyle('jquery-ui-fixes');
OC_Util::addStyle ( "tooltip" ); OC_Util::addStyle("tooltip");
// avatars // avatars
if (\OC::$server->getSystemConfig ()->getValue ( 'enable_avatars', true ) === true) { if (\OC::$server->getSystemConfig()->getValue('enable_avatars', true) === true) {
\OC_Util::addScript ( 'avatar', null, true ); \OC_Util::addScript('avatar', null, true);
\OC_Util::addScript ( 'jquery.avatar', null, true ); \OC_Util::addScript('jquery.avatar', null, true);
\OC_Util::addScript ( 'placeholder', null, true ); \OC_Util::addScript('placeholder', null, true);
} }
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);
OC_Util::addScript ( "apps", null, true ); OC_Util::addScript("apps", null, true);
OC_Util::addScript ( "oc-requesttoken", null, true ); OC_Util::addScript("oc-requesttoken", null, true);
OC_Util::addScript ( 'search', 'search', true ); OC_Util::addScript('search', 'search', true);
OC_Util::addScript ( "config", null, true ); OC_Util::addScript("config", null, true);
OC_Util::addScript ( "eventsource", null, true ); OC_Util::addScript("eventsource", null, true);
OC_Util::addScript ( "octemplate", null, true ); OC_Util::addScript("octemplate", null, true);
OC_Util::addTranslations ( "core", null, true ); OC_Util::addTranslations("core", null, true);
OC_Util::addScript ( "l10n", null, true ); OC_Util::addScript("l10n", null, true);
OC_Util::addScript ( "js", null, true ); OC_Util::addScript("js", null, true);
OC_Util::addScript ( "oc-dialogs", null, true ); OC_Util::addScript("oc-dialogs", null, true);
OC_Util::addScript ( "jquery.ocdialog", null, true ); OC_Util::addScript("jquery.ocdialog", null, true);
OC_Util::addStyle ( "jquery.ocdialog" ); OC_Util::addStyle("jquery.ocdialog");
OC_Util::addScript ( "compatibility", null, true ); OC_Util::addScript("compatibility", null, true);
OC_Util::addScript ( "placeholders", null, true ); OC_Util::addScript("placeholders", null, true);
// Add the stuff we need always // Add the stuff we need always
// following logic will import all vendor libraries that are // following logic will import all vendor libraries that are
@ -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();