We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 1007
    • 10 Posts
    Всем доброго времени.

    У меня возникла проблема, точнее она существует уже довольно давно.
    Я один из тех, кто не любит пускать пользователей (редакторов) в административную панель модикса, поэтому для каждого сайта я создаю свою административную панель.
    В качестве редактора страниц или любого html кода я подгружаю TV c tinymce, но вот какая проблема - в firefox, opera все замечательно работает, а вот в IE поле, где должен быть tinymce редактор, отображается простым полем ввода.

    Можно было плюнуть на это, но стало интересно, что я забываю или делаю не так, ведь в админке modx редактор работает в любом браузере.

    Прошу помочь, заранее благодарен.
      • 29487
      • 385 Posts
      Код страницы бы посмотреть. Стандартный виджет richtext нормально работает.
        • 21977
        • 35 Posts
        Прости, что не по теме, но как ты в этой странице делаешь управление деревом страниц? Просто хочу то же самое сделать.
          • 1007
          • 10 Posts
          Quote from: Temus at Jul 17, 2009, 05:57 PM

          Код страницы бы посмотреть. Стандартный виджет richtext нормально работает.

                      <form name="NewsPublisher" method="post" action="[~[*id*]~]?a=editor&id=[+id+]&act=save">
              	<input name="NewsPublisherForm" type="hidden" value="on" />
                  <table class="form">
                      <tr>
                          <td><label for="pagetitle">заголовок <abbr title="это название показывается в заголовке">?</abbr> : </td>
                          <td><input name="pagetitle" class="input" id="pagetitle" type="text" size="40" value="[+pagetitle+]" /></label></td>
                          <td><label for="pub_date">Дата публикации </td>
                          <td><input name="pub_date" class="input" id="pub_date" type="text" value="[+pub_date+]" size="40" readonly="readonly" />
              	<a onclick="nwpub_cal1.popup();" onmouseover="window.status='Select date'; return true;" onmouseout="window.status=''; return true;"><img src="manager/media/style/MODxLight/images/icons/cal.gif" width="16" height="16" alt="Select date" /></a>
              	<a onclick="document.NewsPublisher.pub_date.value=''; return true;" onmouseover="window.status='Remove date'; return true;" onmouseout="window.status=''; return true;"><img src="manager/media/style/MODxLight/images/icons/cal_nodate.gif" width="16" height="16" alt="Remove date" /></a></label>
                  		</td>
                      </tr>
                      <tr>
                      	<td><label for="longtitle">Заголовок страницы<abbr title="название страницы в браузере">?</abbr> : </td>
                          <td><input name="longtitle" class="input" id="longtitle" type="text" size="40" value="[+longtitle+]" /></label></td>
                          <td colspan="2"><input name="send" type="submit" value="сохранить" class="button" /></td>
                      </tr>
                      <tr>
                      	
                      </tr>
                  </table>
          	<p>
              	<label for="content">[*tvContent*]</label>
          	</p>
          </form>



          Да вроде бы стандартно создаю ТV c richtext указываю редактор TinyMCE ну и вставляю [*tvContent*]. TV говорю откуда брать данные.
            • 1007
            • 10 Posts
            Quote from: Obey-Kun at Jul 18, 2009, 06:22 PM

            Прости, что не по теме, но как ты в этой странице делаешь управление деревом страниц? Просто хочу то же самое сделать.

            В подавляющем большинстве случаев как дерево я не вывожу, обычно вывожу по разделам, так удобнее. Т.е. человек находящийся с правами вебредактора, заходит в нужный раздел а там весь функционал по разделу, если в нем есть какие то вложенные документы то считываю их названия и дату создания и вывожу, обычно в виде таблицы с необходимыми действиями - редактировать, удалить, скрыть.

            Может кто то по другому делать, с удовольствием послушаю, только нужно отдельный топик создать.
              • 3256
              • 26 Posts
              может быть на странице используются другие фреймворки с одинаковыми методами и происходит переопределение?
                • 29487
                • 385 Posts
                Вообще я имел ввиду конечный код, а это кусок какого-то шаблона.
                  • 1007
                  • 10 Posts
                  Quote from: Temus at Jul 21, 2009, 02:07 PM

                  Вообще я имел ввиду конечный код, а это кусок какого-то шаблона.

                  Извини не понял сразу )
                  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
                  <html>
                  <head>
                  
                  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
                  <title>редактор</title>
                  
                  <script type="text/javascript" src="choir/sitefiles/js/mt.js"></script>	
                  <script type="text/javascript" src="choir/sitefiles/js/script.js"></script>
                  <link href="choir/sitefiles/tpl/bureau/style.css" rel="stylesheet" type="text/css">
                  <base href="choir/" />
                  </head>
                  <body>
                  <div id='main'>
                  <table class="m_text" align="center">
                    <tr>
                      <td class="header">
                  		<br style="line-height:31px;">
                  		<img alt="" src="sitefiles/tpl/bureau/images/logo.jpg" style="margin-left:52px; "><br>
                  		<br style="line-height:22px;">
                  		<img alt="" src="sitefiles/tpl/bureau/images/slogan.jpg" style="margin-left:381px; "><br>
                  		<br style="line-height:30px;">
                  		<a href="glavnaya"><img alt="" src="sitefiles/tpl/bureau/images/b1.jpg" style="margin-left:52px; "></a><a href="about"><img alt="" src="sitefiles/tpl/bureau/images/b2.jpg" style="margin-left:59px; "></a><a href="music"><img alt="" src="sitefiles/tpl/bureau/images/b3.jpg" style="margin-left:57px; "></a><a href="galary"><img alt="" src="sitefiles/tpl/bureau/images/b4.jpg" style="margin-left:101px; "></a><br>
                  	</td>
                    </tr>
                    <tr>
                      <td class="middle">
                  		<table >
                  		  <tr>
                  			<td style="width:457px;">
                  				<span  id='main_title'>редактор</span><br>
                  				<br style="line-height:10px;">
                  				<div style="margin-left:3px;   overflow:auto; width:650px; ">
                  					<div style=" ">
                  							<p>
                  
                  <div class="post">
                  
                  			<div class="post_body">
                              <form name="NewsPublisher" method="post" action="editor.html?a=editor&id=2&act=save">
                      	<input name="NewsPublisherForm" type="hidden" value="on" />
                          <table class="form">
                              <tr>
                                  <td><label for="pagetitle">заголовок <abbr title="это название показывается в заголовке">?</abbr> : </td>
                                  <td><input name="pagetitle" class="input" id="pagetitle" type="text" size="40" value="О нас" /></label></td>
                                  <td><label for="pub_date">Дата публикации </td>
                                  <td><input name="pub_date" class="input" id="pub_date" type="text" value="21-07-2009 14:20:35" size="40" readonly="readonly" />
                      	<a onclick="nwpub_cal1.popup();" onmouseover="window.status='Select date'; return true;" onmouseout="window.status=''; return true;"><img src="manager/media/style/MODxLight/images/icons/cal.gif" width="16" height="16" alt="Select date" /></a>
                      	<a onclick="document.NewsPublisher.pub_date.value=''; return true;" onmouseover="window.status='Remove date'; return true;" onmouseout="window.status=''; return true;"><img src="manager/media/style/MODxLight/images/icons/cal_nodate.gif" width="16" height="16" alt="Remove date" /></a></label>
                          		</td>
                              </tr>
                              <tr>
                              	<td><label for="longtitle">Заголовок страницы<abbr title="название страницы в браузере">?</abbr> : </td>
                                  <td><input name="longtitle" class="input" id="longtitle" type="text" size="40" value="" /></label></td>
                                  <td colspan="2"><input name="send" type="submit" value="сохранить" class="button" /></td>
                              </tr>
                              <tr>
                              	
                              </tr>
                          </table>
                  	<p>
                      	<label for="content"><div class="MODX_RichTextWidget"><textarea id="tvtvContent" name="tvtvContent" style="width:100%; height:450px;"><p>раздел находится на стадии заполнения</p></textarea></div><script language="javascript" type="text/javascript" src="/choir/assets/plugins/tinymce3201/jscripts/tiny_mce/tiny_mce.js"></script>
                  <script language="javascript" type="text/javascript" src="/choir/assets/plugins/tinymce3201/xconfig.js"></script>
                  <script language="javascript" type="text/javascript">
                  	tinyMCE.init({
                  		  theme : "advanced",
                  		  mode : "exact",
                  		  width : "100%",
                  		  height : "450",
                  		  relative_urls : true,
                  		  document_base_url : "choir/",
                  		  remove_script_host : true,
                  		  language : "ru",
                  		  elements : "tvtvContent",
                  		  valid_elements : tinymce_valid_elements,
                  		  extended_valid_elements : tinymce_extended_valid_elements,
                  		  invalid_elements : tinymce_invalid_elements,
                  		  entity_encoding : "named",
                  		  cleanup: true,
                  		  apply_source_formatting : true,
                  		  remove_linebreaks : false,
                  		  convert_fonts_to_spans : "true",
                  		  file_browser_callback : "myFileBrowser",
                  		  theme_advanced_blockformats : "p,h1,h2,h3,h4,h5,h6,div,blockquote,code,pre,address",
                  		  plugins : "style,advimage,advlink,searchreplace,print,contextmenu,paste,fullscreen,nonbreaking,xhtmlxtras,visualchars,media",
                  		  theme_advanced_buttons0 : "",
                  		  theme_advanced_buttons1 : "undo,redo,selectall,separator,pastetext,pasteword,separator,search,replace,separator,nonbreaking,hr,charmap,separator,image,link,unlink,anchor,media,separator,cleanup,removeformat,separator,fullscreen,print,code,help",
                  		  theme_advanced_buttons2 : "bold,italic,underline,strikethrough,sub,sup,separator,blockquote,separator,bullist,numlist,outdent,indent,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,styleselect,formatselect,separator,styleprops",
                  		  theme_advanced_buttons3 : "",
                  		  theme_advanced_buttons4 : "",
                  		  theme_advanced_toolbar_location : "top",
                  		  theme_advanced_toolbar_align : "left",
                  		  theme_advanced_path_location : "bottom",
                  		  theme_advanced_disable : "",
                  		  theme_advanced_resizing : false,
                  		  theme_advanced_resize_horizontal : false,
                  		  plugin_insertdate_dateFormat : "%Y-%m-%d",
                  		  plugin_insertdate_timeFormat : "%H:%M:%S",
                  		  button_tile_map : false 
                  
                  	});
                  	function myFileBrowser (field_name, url, type, win) {		
                  		var cmsURL = '/choir/manager/media/browser/mcpuk/browser.php?Connector=/choir/manager/media/browser/mcpuk/connectors/php/connector.php&ServerPath=/choir/&editor=tinymce&editorpath=/choir/assets/plugins/tinymce3201';    // script URL - use an absolute path!
                  		switch (type) {
                  			case "image":
                  				type = 'images';
                  				break;
                  			case "media":
                  				break;
                  			case "flash": 
                  				break;
                  			case "file":
                  				type = 'files';
                  				break;
                  			default:
                  				return false;
                  		}
                  		if (cmsURL.indexOf("?") < 0) {
                  		    //add the type as the only query parameter
                  		    cmsURL = cmsURL + "?type=" + type;
                  		}
                  		else {
                  		    //add the type as an additional query parameter
                  		    // (PHP session ID is now included if there is one at all)
                  		    cmsURL = cmsURL + "&type=" + type;
                  		}
                  		
                  		tinyMCE.activeEditor.windowManager.open({
                  		    file : cmsURL,
                  		    width : screen.width * 0.7,  // Your dimensions may differ - toy around with them!
                  		    height : screen.height * 0.7,
                  		    resizable : "yes",
                  		    inline : "yes",  // This parameter only has an effect if you use the inlinepopups plugin!
                  		    close_previous : "no"
                  		}, {
                  		    window : win,
                  		    input : field_name
                  		});
                  		return false;
                  	}
                  function myCustomOnChangeHandler() {
                  	documentDirty = true;
                  }
                  </script></label>
                  	</p>
                  </form>
                  <script language="JavaScript" src="manager/media/script/datefunctions.js"></script>
                  <script type="text/javascript">
                  		var elm_txt = {}; // dummy
                  		var pub = document.forms["NewsPublisher"].elements["pub_date"];
                  		var nwpub_cal1 = new calendar1(pub,elm_txt);
                  		nwpub_cal1.path="manager/media/";
                  		nwpub_cal1.year_scroll = true;
                  		nwpub_cal1.time_comp = true;	
                  </script>
                  </div>
                  
                  </div>
                  
                  </p>
                  					</div>
                  				</div>
                  			</td>
                  		  </tr>
                  		</table>
                  	</td>
                    </tr>
                    <tr>
                      <td class="footer">
                  	<table >
                  		  <tr>
                  			<td class="col1">
                  				<div>
                  					phone: +7-343-350-19-84<br>
                  					fax:      +7-343-350-74-01<br>
                  					email:  <a href="#">[email protected]</a>
                  				</div>
                  			</td>
                  			<td class="col2">
                  				 | <a href="admin">admins</a>
                  			</td>
                  		  </tr>
                  		</table>
                  	</td>
                    </tr>
                  </table>
                  </div>
                  </body>
                  </html>



                  Прошу не обращать внимание на табличную верстку ), шаблон взял со стороны.
                    • 29487
                    • 385 Posts
                    Проблема в <base> Если в FF путь, начинающийся со слеша (/choir/assets/plugins...) считается всегда от корня, то в IE к нему прибавляется путь из <base>, и получается что-то вроде site.ru/choir//choir/assets/plugins...
                    Если трогать base не хочется, то можно попробовать в плагине TinyMCE поменять строчку
                    $tinyURL = $modx->config[’base_url’].’assets/plugins/’.$pluginfolder;
                    на
                    $tinyURL = $modx->config[’site_url’].’assets/plugins/’.$pluginfolder;

                    P.S. <label for="content"><div class="MODX_RichTextWidget"><textarea id="tvtvContent" wink
                      • 1007
                      • 10 Posts
                      Quote from: Temus at Jul 21, 2009, 04:38 PM

                      Проблема в <base> Если в FF путь, начинающийся со слеша (/choir/assets/plugins...) считается всегда от корня, то в IE к нему прибавляется путь из <base>, и получается что-то вроде site.ru/choir//choir/assets/plugins...
                      Если трогать base не хочется, то можно попробовать в плагине TinyMCE поменять строчку
                      $tinyURL = $modx->config[’base_url’].’assets/plugins/’.$pluginfolder;
                      на
                      $tinyURL = $modx->config[’site_url’].’assets/plugins/’.$pluginfolder;

                      P.S. <label for="content"><div class="MODX_RichTextWidget"><textarea id="tvtvContent" wink

                      спасибо Temus, дело было именно в этом.



                      Сразу, еще один вопрос по tinyMCE редактору.
                      Я включил браузер файлов для вебпользователей в настройках сайта.
                      Ситуация такая, что под правами менеджера сайта с редактора могу загружать объекты (картинки, файлы и тд), если зайти под вебпользователем и в тоже время оставать залогиненым с правами менеджера тоже загружается все без провблем.

                      Но если зайти только вебпользователем, браузер файлов в редакторе загружать ничего не хочет и даже не показывает какие объекты есть в папке, хотя диалоговое окно для загрузки дает открывать.
                      Может кто сталкивался ?