We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 7671
    • 14 Posts
    Добрый день.
    После апгрейда в окошке "Вставить ссылку" исчезла возможность выбора ссылки из списка страниц своего сайта (раньше называлось "Перечень ссылок ").
    Это я один такой несчастный или ещё у кого есть?
    Как лечить - уже весь мозг сломал об tiny - не могу никак сообразить.
      WBR, Dmitrii
      +375-29-40-LINUX
      • 7671
      • 14 Posts
      Полечилось добавлением в самое начало плагина (до инклюдов) строчки $tinyLinkList=’enabled’;
      Сейчас лечу кракозябры вместо русских буковок в списке ссылок...

      Ура. Полечил.
      Берём \assets\plugins\tinymce2111\tinymce.linklist.php и вправляем:
      В функции function getAllPages добавляем
      global $database_connection_charset;
      и сразу после mysql_select_db($dbase) or die(’Could not select database’);
      добиваем 2 строчки:
      @mysql_query("SET CHARACTER SET {$database_connection_charset}");
      @mysql_query("SET NAMES {$database_connection_charset}");

      Всё. Работает.
        WBR, Dmitrii
        +375-29-40-LINUX
        • 20246
        • 33 Posts
        Слух. А можешь выложить, то что ты пофиксил. Че-т у меня не заработало. пасип.

        Ссылок на внутренние страницы так и не появилось.
          • 7671
          • 14 Posts
          Quote from: morozov at Jun 19, 2007, 07:49 AM

          Слух. А можешь выложить, то что ты пофиксил. Че-т у меня не заработало. пасип.

          Ссылок на внутренние страницы так и не появилось.
          Заходим в Ресурсы -> Управление ресурсами -> Плагины и правим TinyMCE 2.1.1.1: Tiny.....
          /*
           * TinyMCE RichText Editor Plugin 
           * Written By Jeff Whitfield - September 9, 2005
           * Modified On - February 1, 2007
           *
           * Version 2.1.1.1
           *
           * Events: OnRichTextEditorInit, OnRichTextEditorRegister, OnInterfaceSettingsRender
           *
           */
          $tinyLinkList='enabled';  //Added by Dmitrii Varvashenia
          include_once $modx->config['base_path'].'assets/plugins/tinymce2111/tinymce.lang.php';
          include_once $modx->config['base_path'].'assets/plugins/tinymce2111/tinymce.functions.php';
          
          // Set path and base setting variables
          if(!isset($tinyPath)) { 
          	global $tinyPath;
          	$tinyPath = $modx->config['base_path'].'assets/plugins/tinymce2111'; 
          }
          $base_url = $modx->config['base_url'];
          $displayStyle = ( ($_SESSION['browser']=='mz') || ($_SESSION['browser']=='op') ) ? "table-row" : "block" ;
          
          // Handle event
          $e = &$modx->Event; 
          switch ($e->name) { 
          
          	case "OnRichTextEditorRegister": // register only for backend
          		$e->output("TinyMCE");
          		break;
          
          	case "OnRichTextEditorInit": 
          		if($editor=="TinyMCE") {
          			$elementList = implode(",", $elements);
          			if(isset($forfrontend)||$modx->isFrontend()){
          				$frontend = 'true';
          				$frontend_language = isset($modx->config['fe_editor_lang']) ? $modx->config['fe_editor_lang']:"";
          				$tinymce_language = getTinyMCELang($frontend_language);
          				$html = getTinyMCEScript($elementList,$webtheme,$width,$height,$tinymce_language,$frontend,$base_url, $webPlugins, $webButtons1, $webButtons2, $webButtons3, $webButtons4, $disabledButtons, $tinyFormats, $entity_encoding, $entities, $tinyPathOptions, $tinyCleanup, $tinyResizing, $modx->config['editor_css_path'], $modx->config['tinymce_css_selectors'], $modx->config['use_browser'], $webAlign, null, null, $tinyLinkList);
          			} else {
          				$frontend = 'false';
          				$manager_language = $modx->config['manager_language'];
          				$tinymce_language = getTinyMCELang($manager_language);
          				$html = getTinyMCEScript($elementList, $modx->config['tinymce_editor_theme'], $width='100%', $height='400px', $tinymce_language, $frontend, $modx->config['base_url'], $modx->config['tinymce_custom_plugins'], $modx->config['tinymce_custom_buttons1'], $modx->config['tinymce_custom_buttons2'], $modx->config['tinymce_custom_buttons3'], $modx->config['tinymce_custom_buttons4'], $disabledButtons, $tinyFormats, $entity_encoding, $entities, $tinyPathOptions, $tinyCleanup, $tinyResizing, $modx->config['editor_css_path'], $modx->config['tinymce_css_selectors'], $modx->config['use_browser'], $modx->config['manager_direction'], $advimage_styles, $advlink_styles, $tinyLinkList);
          			}
          			$e->output($html);
          		}		
          		break;
          
          	case "OnInterfaceSettingsRender":
          		$manager_language = $modx->config['manager_language'];
          		$html = getTinyMCESettings($_lang, $tinyPath, $modx->config['manager_language'], $modx->config['use_editor'], $modx->config['tinymce_editor_theme'], $modx->config['tinymce_css_selectors'], $modx->config['tinymce_custom_plugins'], $modx->config['tinymce_custom_buttons1'], $modx->config['tinymce_custom_buttons2'], $modx->config['tinymce_custom_buttons3'], $modx->config['tinymce_custom_buttons4'], $displayStyle);
          		$e->output($html);
          		break;
          
             default :    
                return; // stop here - this is very important. 
                break; 
          }
          
          


          Ну и на всякий пожарный \assets\plugins\tinymce2111\tinymce.linklist.php (если сидишь на utf8):
          <?php
          include_once "../../../manager/includes/config.inc.php";
          
          $allpages = getAllPages();
          foreach($allpages as $page){
              $caption = ($page['pagetitle'])?htmlspecialchars($page['pagetitle'],ENT_QUOTES):htmlspecialchars($page['menutitle'],ENT_QUOTES);
          	$list .=($list!='')?",\n":"\n";
          	$list.= "[\"".$caption." (".$page['id'].")"."\", \"[\"+\"~".$page['id']."~\"+\"]\"]";
          }
          $output = "var tinyMCELinkList = new Array(\n". $list .");";
          
          echo $output;
          
          
          function getAllPages($id=0, $sort='menuindex', $dir='ASC', $fields='pagetitle, id, menutitle') {
              global $database_type;
              global $database_server;
              global $database_user;
              global $database_password;    
          	global $dbase;
          	global $table_prefix;
          	global $database_connection_charset;	//Added by Dmitrii Varvashenia
              
              $tblsc = $dbase.".`".$table_prefix."site_content`";
              $tbldg = $dbase.".`".$table_prefix."document_groups`";
          
              // modify field names to use sc. table reference
              $fields = 'sc.'.implode(',sc.',preg_replace("/^\s/i","",explode(',',$fields)));
              $sort = 'sc.'.implode(',sc.',preg_replace("/^\s/i","",explode(',',$sort)));
          
          	// Connecting, selecting database
          	$link = mysql_connect($database_server, $database_user, $database_password) or die('Could not connect: ' . mysql_error());
          	$dbase = str_replace('`', '', $dbase);
          	mysql_select_db($dbase) or die('Could not select database');
          	@mysql_query("SET CHARACTER SET {$database_connection_charset}");	//Added by Dmitrii Varvashenia
              @mysql_query("SET NAMES {$database_connection_charset}");	//Added by Dmitrii Varvashenia
          
              $sql = "SELECT DISTINCT $fields FROM $tblsc sc
                LEFT JOIN $tbldg dg on dg.document = sc.id
                WHERE sc.published=1 AND sc.deleted=0
                ORDER BY $sort $dir;";
          
              $result = mysql_query($sql) or die('Query failed: ' . mysql_error());
              $resourceArray = array();
              for($i=0;$i<@mysql_num_rows($result);$i++)  {
                array_push($resourceArray,mysql_fetch_assoc($result));
              }
          	// Free resultset
          	mysql_free_result($result);
          	
          	// Closing connection
          	mysql_close($link);
          	
          	sort($resourceArray);
          
              return $resourceArray;
          }
          ?>
          
            WBR, Dmitrii
            +375-29-40-LINUX
            • 20246
            • 33 Posts
            Спасибо земляк smiley Буду пробовать.
              • 6953
              • 94 Posts
              у меня после обновления такие макароны - редактор TinyMCE внезависимости от того, какой тип его выбераешь (Простой, Пользовательский или Расширенный) остается Простым. Это как-то лечится?
                L.O.V.E is just a four letter word
                • 7671
                • 14 Posts
                Quote from: Defite at Jul 26, 2007, 08:09 AM

                у меня после обновления такие макароны - редактор TinyMCE внезависимости от того, какой тип его выбераешь (Простой, Пользовательский или Расширенный) остается Простым. Это как-то лечится?
                Аналогично.
                Сделал под себя кустомный и на этом успокоился.
                Вроде где-то (кажись в багах) про это пробегало, но где, я уже точно не вспомню.
                  WBR, Dmitrii
                  +375-29-40-LINUX
                  • 6953
                  • 94 Posts
                  Quote from: Dmitrii at Jul 26, 2007, 08:27 AM

                  Quote from: Defite at Jul 26, 2007, 08:09 AM

                  у меня после обновления такие макароны - редактор TinyMCE внезависимости от того, какой тип его выбераешь (Простой, Пользовательский или Расширенный) остается Простым. Это как-то лечится?
                  Аналогично.
                  Сделал под себя кустомный и на этом успокоился.
                  Вроде где-то (кажись в багах) про это пробегало, но где, я уже точно не вспомню.

                  Кустомный, в смысле просто в менеджере поменял? у меня все время возвращается на Простой. Или в самом коде?
                    L.O.V.E is just a four letter word
                    • 7671
                    • 14 Posts
                    Quote from: Defite at Jul 26, 2007, 08:37 AM

                    Quote from: Dmitrii at Jul 26, 2007, 08:27 AM

                    Quote from: Defite at Jul 26, 2007, 08:09 AM

                    у меня после обновления такие макароны - редактор TinyMCE внезависимости от того, какой тип его выбераешь (Простой, Пользовательский или Расширенный) остается Простым. Это как-то лечится?
                    Аналогично.
                    Сделал под себя кустомный и на этом успокоился.
                    Вроде где-то (кажись в багах) про это пробегало, но где, я уже точно не вспомню.
                    Кустомный, в смысле просто в менеджере поменял? у меня все время возвращается на Простой. Или в самом коде?
                    В менеджере поставил custom и вбил в Custom Plugins и Custom Buttons то, без чего я жить немогу.
                    А именно:
                    Custom Plugins:
                    style,layer,table,advhr,advimage,advlink,emotions,insertdatetime,preview,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,nonbreaking,xhtmlxtras,visualchars,media
                    Row1, 2, 3 и 4:
                    newdocument,separator,bold,italic,underline,strikethrough,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,styleselect,formatselect,fontselect,fontsizeselect
                    cut,copy,paste,separator,search,replace,separator,pastetext,pasteword,selectall,separator,bullist,numlist,separator,outdent,indent,separator,undo,redo,separator,link,unlink,anchor,image,separator,cleanup,help,code,separator,insertdate,inserttime,preview,separator,forecolor,backcolor
                    tablecontrols,separator,hr,removeformat,visualaid,separator,sub,sup,separator,charmap,emotions,iespell,media,advhr,separator,print,separator,ltr,rtl,nonbreaking,separator,fullscreen
                    insertlayer,moveforward,movebackward,absolute,separator,styleprops,visualchars,separator,cite,ins,del,abbr,acronym
                      WBR, Dmitrii
                      +375-29-40-LINUX
                      • 6953
                      • 94 Posts
                      Ne stal bi zadavat’ vopros,esli bi ne tot fakt,4to y menja dazhe pri smene na Custom on pri soxranenii snova Simple stanovitsja...ne mogy ponjat’,4ego emy ne xvataet. Mozhet,on kakie-to faili ne zalil?
                        L.O.V.E is just a four letter word