Overview

Namespaces

  • AnalyseModule
    • Models
  • BaseModule
    • Exceptions
    • Models
    • Repository
    • Services
  • DispatchModule
    • Helpers
    • Models
    • Tools
  • PredictModule
  • SearchModule

Classes

  • AnalyseModule\AnalysePresenter
  • AnalyseModule\ConservancyPresenter
  • AnalyseModule\Models\BaseTool
  • AnalyseModule\Models\ConservancyComparator
  • BaseModule\BasePresenter
  • BaseModule\DiscoveredViewReflection
  • BaseModule\ErrorPresenter
  • BaseModule\Form
  • BaseModule\HomepagePresenter
  • BaseModule\Models\BaseModel
  • BaseModule\Models\FileModel
  • BaseModule\PesekPresenter
  • BaseModule\Repository\BaseRepository
  • BaseModule\Repository\TestRepository
  • BaseModule\RouterFactory
  • BaseModule\RssPresenter
  • BaseModule\Services\Authenticator
  • BaseModule\Services\BaseService
  • BaseModule\Services\DbService
  • DispatchModule\BaseMatch
  • DispatchModule\BaseParser
  • DispatchModule\BlastMatch
  • DispatchModule\BlatMatch
  • DispatchModule\Helpers\RnaplotHelper
  • DispatchModule\Helpers\TravelerHelper
  • DispatchModule\Models\BaseModel
  • DispatchModule\Models\BlastModel
  • DispatchModule\Models\BlastXMLParser
  • DispatchModule\Models\BlatModel
  • DispatchModule\Models\Cppredict2Model
  • DispatchModule\Models\CppredictModel
  • DispatchModule\Models\FastaModel
  • DispatchModule\Models\FileModel
  • DispatchModule\PredictParser
  • DispatchModule\ResultSet
  • DispatchModule\SearchParser
  • DispatchModule\Sequence
  • DispatchModule\Tools\AnnotationDbTool
  • DispatchModule\Tools\BaseTool
  • DispatchModule\Tools\Cppredict2Tool
  • DispatchModule\Tools\DbTool
  • DispatchModule\Tools\SimilarityTool
  • DispatchModule\Tools\TaxonomyDbTool
  • PredictModule\PredictPresenter
  • SearchModule\SearchPresenter

Interfaces

  • DispatchModule\Tools\ToolInterface

Exceptions

  • BaseModule\Exceptions\BaseException
  • BaseModule\Exceptions\NotFoundException
  • BaseModule\Exceptions\ToolException
  • Overview
  • Namespace
  • Class
 1:  2:  3:  4:  5:  6:  7:  8:  9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 
<?php

namespace BaseModule;

use Nette\Application\UI\Presenter;

/**
 * Base presneter that's ancestor of all other presenters
 */
abstract class BasePresenter extends Presenter {

    /**
     * Constructor additionally calls postConstruct
     *
     * @param \Nette\DI\Container $context
     */
    public function __construct(\Nette\DI\Container $context = NULL) {
        parent::__construct($context);
                if (session_status() == PHP_SESSION_NONE) {
                    session_start();
                }
                session_write_close(); // WARNING: Check the behavior whether it does not cause any problems!!!

        $this->postConstruct($context);
//        $this->template->basePath = 'www/private-beta/';
    }

    /**
     * Method that autowires services by property annotations
     *
     * @param \Nette\DI\Container $context
     */
    private function postConstruct(\Nette\DI\Container $context) {
        // read all properties
        foreach ($this->getReflection()->getProperties() as $property) {
            // get annotation of each property
            $annotations = $property->getAnnotations();
            $var = \Nette\Utils\Arrays::get($annotations, 'var', NULL);
            $inject = \Nette\Utils\Arrays::get($annotations, 'Inject', FALSE);

            // if it's injection, inject
            if ($inject && count($var) == 1) {
                $varArr = explode(' ', $var[0]); // after space, description may follow
                $this->{$property->name} = $context->getByType($varArr[0]);
            }
        }
    }

    /**
     * Startup method of a presenter (used to set variables for layout)
     */
    public function startup() {
        parent::startup();

        $this->template->docUrl = $this->context->parameters['docUrl'];
    }

    /**
     * Fixed path(s) to defualt template
     * 
     * @return array array with paths to layout
     */
    public function formatLayoutTemplateFiles() {
        return array($this->context->parameters['appDir'] . '/BaseModule/templates/@layout.latte');
    }

}
API documentation generated by ApiGen