/** * handle tree edit */ private function handleeditget($retrieveFields = true) { $template = new TemplateEngine($this->getPath() . "templates/" . $this->templateFile); $request = Request::getInstance(); $view = ViewManager::getInstance(); $view->setType(ViewManager::TREE_EDIT); if (!$request->exists('id')) { throw new Exception('Nieuwsbericht ontbreekt.'); } $id = intval($request->getValue('id')); $key = array('id' => $id); $template->setVariable($key); if ($retrieveFields) { $fields = $this->getDetail($key); $fields['online'] = $fields['online'] ? strftime('%Y-%m-%d', $fields['online']) : ''; $fields['offline'] = $fields['offline'] ? strftime('%Y-%m-%d', $fields['offline']) : ''; $fields['date'] = $fields['date'] ? strftime('%Y-%m-%d', $fields['date']) : ''; } else { $fields = $this->getFields(SqlParser::MOD_UPDATE); $detail = $this->getDetail($key); $fields['image'] = $detail['image']; } $this->setFields($fields); if ($fields['image']) { $img = new Image($fields['image'], $this->plugin->getContentPath(true)); $fields['image'] = array('src' => $this->plugin->getContentPath(false) . $img->getFileName(false), 'width' => $img->getWidth(), 'height' => $img->getHeight()); } $template->setVariable($fields); $this->handleTreeSettings($template); $template->setVariable('fckBox', $this->getEditor($fields['text'])); $datefields = array(); $datefields[] = array('dateField' => 'online', 'triggerElement' => 'online'); $datefields[] = array('dateField' => 'offline', 'triggerElement' => 'offline'); $datefields[] = array('dateField' => 'date', 'triggerElement' => 'date'); Utils::getDatePicker($this->director->theme, $datefields); // get crop settings $settings = $this->plugin->getSettings(); //only crop if both width and height defaults are set if ($fields['image'] && $settings['image_width'] && $settings['image_height'] && ($fields['image']['width'] > $settings['image_width'] || $fields['image']['height'] > $settings['image_height'])) { $theme = $this->director->theme; $parseFile = new ParseFile(); $parseFile->setVariable($fields); $parseFile->setVariable('imgTag', 'imgsrc'); $parseFile->setVariable($settings); $parseFile->setSource($this->plugin->getHtdocsPath(true) . "js/cropinit.js.in"); //$parseFile->setDestination($this->plugin->getCachePath(true)."cropinit_tpl_content.js"); //$parseFile->save(); $theme->addJavascript($parseFile->fetch()); $theme->addHeader('<script type="text/javascript" src="' . DIF_VIRTUAL_WEB_ROOT . 'js/prototype.js"></script>'); $theme->addHeader('<script type="text/javascript" src="' . DIF_VIRTUAL_WEB_ROOT . 'js/scriptaculous.js"></script>'); $theme->addHeader('<script type="text/javascript" src="' . DIF_VIRTUAL_WEB_ROOT . 'js/cropper.js"></script>'); $theme->addHeader('<script type="text/javascript" src="' . DIF_VIRTUAL_WEB_ROOT . 'js/mint.js"></script>'); //$theme->addHeader('<script type="text/javascript" src="'.$this->plugin->getCachePath().'cropinit_tpl_content.js"></script>'); } $this->template[$this->director->theme->getConfig()->main_tag] = $template; }