/**
  * module initialization tasks
  *
  * @param object $request
  * @param object $tpl Template instance
  * 
  * @return void
  */
 function init(&$request, $tpl = null)
 {
     $this->request =& $request;
     if (!isset($this->site) && !Request::isCurrentModuleAnInstallModule()) {
         //site could be setted if ViewRss is called for multiple sites
         $site = $this->request->getSiteId();
         if ($site) {
             if (get_class($this) != "adminupdate") {
                 $this->site = new Site($site);
             }
         }
     }
     if (!Request::isCurrentModuleAGraphModule()) {
         if (!is_null($tpl)) {
             $this->tpl =& $tpl;
         } else {
             if (isset($this->site)) {
                 $this->tpl =& new TemplateEngine($this->viewTemplate, $this->site->getPathTheme());
             } else {
                 $this->tpl =& new TemplateEngine($this->viewTemplate);
             }
         }
     }
 }