Pridať widgEditor do FORM

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
vic11sk
Člen | 11
+
0
-

Zdravím,
už som prečítal aj iné príspevky o tom ako dať do form wysiwyg editor, len mi to nepomohlo.
Chel by som si dat na svoju stránku, do CMS-ka tento wysiwyg editor: widgEditor

Zdroják vyzerá takto:

<?php

	 public function renderAddPage() {
		$this->template->title = "Add web page";

		$form = $this->getComponent('pageForm');
		$form['save']->caption = 'Add';
		$this->template->form = $form;
	}

	protected function createComponent($name) {
		switch ($name) {

		case 'pageForm':
			$id = $this->getParam('id');
			$lang = array(
				'sk' => '(sk) Slovak',
				'en' => '(en) English'
			);
			$dat = new Database;
			$form = new AppForm($this, $name);
			$form->addSelect('lang', 'Language:', $lang);
			$form->addText('title', 'Name:', 80)
				->addRule(Form::FILLED, 'Please enter name of the item.');
			$form->addTextArea('description', 'Description:', 30, 3);


			$form->addSubmit('save', 'Save')->getControlPrototype()->class('default');
			$form->addSubmit('cancel', 'Cancel')->setValidationScope(NULL);
			$form->onSubmit[] = array($this, 'pageFormSubmitted');

			$form->addProtection('Please submit this form again (security token has expired).');
			return;

		default:
			parent::createComponent($name);
		}
?>

Vedel by mi niekto poradiť, ako na to? Aj keď nejako „škaredo“, aj to by pomohlo, len by som to tam mal.
Ďakujem!

Editoval vic11sk (30. 7. 2009 15:26)

Panda
Člen | 569
+
0
-

Škaredě a jednoduše:

$form->addTextArea('description', 'Description:', 30, 3)
	->getControlPrototype()->class('widgEditor');
// samozřejmě musíš mít JavaScript toho editoru připojený ke stránce

O filtraci HTML kódu se pak musíš postarat sám ve funkci pageFormSubmitted. Lepší by však bylo si postavit vlastní formulářový prvek: https://forum.nette.org/…iewtopic.php?….