Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl


stachuf11
Napisane: 12.01.2009, 18:27:00





Grupa: Zarejestrowani
Postów: 154
Dołączył: 24.04.2006

Ostrzeżenie: (0%)
-----

tak, podam
wiec po sciągnieciu tej klasy ze strony
http://trac.symfony-project.org/attachment...ditor.class.php
i dodaniu jej do pluginu sfFormExtraPlugin, trzeba też sciągnąc kod edytora FCK i załadować do katalogu js/fckeditor

pozniej w aplikacji w config/settings.yml
dodajesz
  1. <?php
  2. rich_text_fck_js_dir:   js/fckeditor
  3. ?>


i jeszcze w pliku view.yml
  1. <?php
  2. javascripts:    [ fckeditor/fckeditor]
  3. ?>


w tej klasie sciągniętej zmieniłem tresc funkcji render na

  1. <?php
  2. public function render($name, $value = null, $attributes = array(), $errors = array())
  3.       {
  4.      
  5.       $path1=sfContext::getInstance()->getRequest()->getRelativeUrlRoot().'/'.sfConfig::get('sf_rich_text_fck_js_dir').'/';
  6.       $path2=sfContext::getInstance()->getRequest()->getRelativeUrlRoot().'/js/fckeditor/fckconfig.js';
  7.     $textarea = parent::render($name, $value, $attributes, $errors);
  8.    
  9.         $js = sprintf(<<<EOF
  10. <script type="text/javascript">
  11.     var oFCKeditor = new FCKeditor('%s','%s','%s');
  12.     oFCKeditor.BasePath = '%s' ;
  13.     oFCKeditor.Config['CustomConfigurationsPath'] = '%s';
  14.     oFCKeditor.ReplaceTextarea();
  15. </script>
  16. EOF
  17.         ,  
  18.           $name,
  19.           $this->getOption('width')                     ? $this->getOption('width')                    : '100%',
  20.           $this->getOption('height')                    ? $this->getOption('height')                   : '200',
  21.           $this->getOption('BasePath')                  ? $this->getOption('BasePath')                 : $path1,
  22.           $this->getOption('CustomConfigurationsPath')  ? $this->getOption('CustomConfigurationsPath') : $path2
  23.         );
  24.    
  25.         return $textarea.$js;
  26.       }
  27. ?>

czyli usunieta finkcja document.onload, ponieważ onload ;pozwalało na odpalenie tylko jednego edytora fck, a jak chciałem kilka edytorów na stronie to nie działało, a teraz dxiała z kilkoma edytorami

definiowanie pola w lib/forms/...Form.class.php tak wygłada

  1. <?php
  2. $this->widgetSchema['longdescription'] = new sfWidgetFormTextareaFCKEditor(array('width'=>'800',    
  3.                                                                            'height'=>'400'));
  4. ?>



i działa bez problemu, tez pola z I18N działąją ok, gdybyś miał problemy to pisz jeszcze
pozdrawiam
Stachu
  Forum: Frameworki · Podgląd postu: #557649 · Odpowiedzi: 3 · Wyświetleń: 1 140


New Posts  Nowe odpowiedzi
No New Posts  Brak nowych odpowiedzi
Hot topic  Popularny temat (Nowe)
No new  Popularny temat (Brak nowych)
Poll  Sonda (Nowe)
No new votes  Sonda (Brak nowych)
Closed  Zamknięty temat
Moved  Przeniesiony temat
 

RSS Wersja Lo-Fi Aktualny czas: 10.06.2024 - 17:26