<br>In TinyMCE case, it&#39;s not just a config file.&nbsp; When you download TinyMCE from Moxicode you get lots of extra files (examples, _src.js, translated icons, etc).&nbsp; The current install process has the user download the full TinyMCE package and throw it into the TinyMCE module folder.&nbsp; So currently, TinyMCE users have more than twice the code they need on their sites unless they planning on doing some custom TinyMCE development or they are deleting those extra files themselves.&nbsp; 
<br><br>After going through the regular module install process TinyMCE shows up... but the fun doesn&#39;t stop there folks!&nbsp; <br><br>Because TinyMCE isn&#39;t Drupal specific, Moxiecode tries to filter out potentially malicious HTML by default which often conflicts with Drupal&#39;s Input format.&nbsp; Unlike Drupal where the HTML is changed on display, TinyMCE alters the HTML when the WYSIWYG toolbar is applied to the text field.&nbsp; If TinyMCE is set to be shown by default, the original &quot;bad&quot; HTML is deleted as soon as the edit page is loaded.&nbsp; Tags like &lt;script&gt; and &lt;embed&gt; are deleted even when they are manually added using the HTML button.&nbsp; When using TinyMCE with Drupal, this double filter makes no sense.
<br><br>The process to change the valid HTML allowed by TinyMCE is less than user friendly (<a href="http://groups.drupal.org/node/4114#validhtml">http://groups.drupal.org/node/4114#validhtml</a>).&nbsp; <br><br>The question isn&#39;t am I going to provide a Drupal friendly version of TinyMCE.&nbsp; 
<br><br>I am.&nbsp; <br><br>The only question is where will Drupal users interested in TinyMCE downlaod that version from?<br><br>I just cannot follow the logic that having me host 90% of the code needed to install the module on a site I maintain makes Drupal more secure...&nbsp; nor can I wrap my head around how automating the process of downloading code from sites other than 
<a href="http://Drupal.org">Drupal.org</a> would make Drupal installs more secure.&nbsp; <br><br>If there is an exploit in TinyMCE that compromises Drupal installs tomorrow, there are going to be a lot of sites comprised.&nbsp; Is the fact that TinyMCE is currently a two step install going to change who people blame for their Drupal site being compromised?&nbsp; Will making TinyMCE easier to install change who gets the blame?
<br><br>The only argument I&#39;ve heard for keeping 3rd party code out of CVS that makes sense to me is that the size and number of files would create performance issues.&nbsp; I don&#39;t know enough about CVS to know what a reasonable amount of code might be, but since there are already respected developers ignoring the 0K policy it seems like something is going to have to change.&nbsp;&nbsp; 
<br><br>- Kevin<br><br><div><span class="gmail_quote">On 5/24/07, <b class="gmail_sendername">Matthew Farina</b> &lt;<a href="mailto:matt@mattfarina.com">matt@mattfarina.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Can someone explain what would be the difference between including a<br>configured TinyMCE and TinyMCE from moxiecode?&nbsp;&nbsp;Would it just be the<br>configuration file or more?<br><br>I&#39;m starting to wonder if going with a ftp/sftp approach (like
<br>Joomla) has wouldn&#39;t be a bad idea.&nbsp;&nbsp;We could keep the code out or<br>our repository yet have the installer pull it down and put it in the<br>right place/give a simple upload window as a step with instructions<br>
where to download it.<br><br>In the case of TinyMCE, if it&#39;s just the config file that could be<br>written via this ftp/sftp functionality.<br><br>And, maybe not allowing the change to CVS policy would give incentive<br>
to write the ftp functionality.<br><br>Just some thoughts....<br><br>Matt<br><br>On May 24, 2007, at 6:31 PM, Sean Robertson wrote:<br><br>&gt; I would like to see a Drupal-optimized TinyMCE package.&nbsp;&nbsp;It&#39;d make<br>&gt; it a lot easier on me if it had standard Drupal-related plugins
<br>&gt; already installed so I didn&#39;t have to do that manually for every site.<br>&gt;<br>&gt;<br>&gt;<br>&gt; Matthew Farina wrote:<br>&gt;&gt; At this point a number of merits for both directions have come out<br>&gt;&gt; here.&nbsp;&nbsp;Currently the policy is to not have them in CVS.&nbsp;&nbsp;What
<br>&gt;&gt; would it take to change that policy?<br>&gt;&gt; On May 24, 2007, at 3:04 PM, Kevin Reynen wrote:<br>&gt;&gt;&gt; I had conceded to host the Drupal specific version of TinyMCE<br>&gt;&gt;&gt; myself, but Tao&#39;s message was interesting enough to suck me back
<br>&gt;&gt;&gt; in to this.<br>&gt;&gt;&gt; Round 2... ding, ding<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; Nedjo asked about the 3rd party library issue ( <a href="http://drupal.org/">http://drupal.org/</a><br>&gt;&gt;&gt; node/124978), but it looks like Jeff just went ahead and uploaded
<br>&gt;&gt;&gt; the files he wanted to use to CVS as part of the modules instead<br>&gt;&gt;&gt; including links and documentation for where to download the files<br>&gt;&gt;&gt; and how to install or configure them.<br>
&gt;&gt;&gt;<br>&gt;&gt;&gt; Jeff includes unmodified? versions of jquery.js 1.1.2 and compat.<br>&gt;&gt;&gt; 1.0.js (<a href="http://dev.jquery.com/browser/trunk/plugins/compat-1.0">http://dev.jquery.com/browser/trunk/plugins/compat-1.0
</a>)<br>&gt;&gt;&gt; in jQuery_update.&nbsp;&nbsp;The interface.js (78k) included in the<br>&gt;&gt;&gt; JQuery_interface is available from the developer at http://<br>&gt;&gt;&gt; <a href="http://interface.eyecon.ro/changelog">interface.eyecon.ro/changelog
</a><br>&gt;&gt;&gt;<br>&gt;&gt;&gt; I also found it here...<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; <a href="http://trac.wordpress.org/browser/trunk/wp-includes/js/jquery/">http://trac.wordpress.org/browser/trunk/wp-includes/js/jquery/
</a><br>&gt;&gt;&gt; interface.js<br>&gt;&gt;&gt; <a href="http://trac.bbpress.org/browser/trunk/bb-includes/js/jquery/">http://trac.bbpress.org/browser/trunk/bb-includes/js/jquery/</a><br>&gt;&gt;&gt; interface.js &lt;<a href="http://trac.bbpress.org/browser/trunk/bb-includes/">
http://trac.bbpress.org/browser/trunk/bb-includes/</a><br>&gt;&gt;&gt; js/jquery/interface.js&gt;<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; Ironically, you can also find the WordPress optimized version of<br>&gt;&gt;&gt; TinyMCE in wp-includes as well...
<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; <a href="http://trac.wordpress.org/browser/trunk/wp-includes/js/tinymce">http://trac.wordpress.org/browser/trunk/wp-includes/js/tinymce</a><br>&gt;&gt;&gt; &lt;<a href="http://trac.wordpress.org/browser/trunk/wp-includes/js/tinymce">
http://trac.wordpress.org/browser/trunk/wp-includes/js/tinymce</a>&gt;<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; TinyMCE IS included as part of the WordPress &quot;core&quot;, but as a<br>&gt;&gt;&gt; customized/optimized/compressed version with a small number of
<br>&gt;&gt;&gt; plugins&nbsp;&nbsp;( <a href="http://trac.wordpress.org/browser/trunk/wp-includes/js/">http://trac.wordpress.org/browser/trunk/wp-includes/js/</a><br>&gt;&gt;&gt; tinymce/plugins).&nbsp;&nbsp;By dropping&nbsp;&nbsp;the<br>&gt;&gt;&gt; _src.js files and unused themes/icons, the WordPress TinyMCE is a
<br>&gt;&gt;&gt; much smaller download.&nbsp;&nbsp;They also include WordPress specific plug-<br>&gt;&gt;&gt; ins for functionality and help.&nbsp;&nbsp;These are the types of<br>&gt;&gt;&gt; optimizations I&#39;d like to be doing to TinyMCE for Drupal, but the
<br>&gt;&gt;&gt; current CVS policy requires me to host a Drupal specific version<br>&gt;&gt;&gt; of TinyMCE myself.<br>&gt;&gt;&gt; For the TinyMCE module, it doesn&#39;t make a whole lot of sense to<br>&gt;&gt;&gt; put the required library in another download since the module&#39;s
<br>&gt;&gt;&gt; sole purpose is to enable and configure the TinyMCE library, but<br>&gt;&gt;&gt; if other modules requiring external libraries standardized on how<br>&gt;&gt;&gt; the libraries are handled I&#39;d go along for that ride.&nbsp;&nbsp;Assuming
<br>&gt;&gt;&gt; there are no licensing conflicts, libraries could be treated as<br>&gt;&gt;&gt; modules.&nbsp;&nbsp;Library dependencies could be handled by the .info,<br>&gt;&gt;&gt; someone would have &#39;own&#39; the security and support issues related
<br>&gt;&gt;&gt; to the library just like maintainers (in theory) own these for<br>&gt;&gt;&gt; modules, and version conflicts between developers using a common<br>&gt;&gt;&gt; resources could be worked out the same way they are now.
<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; I don&#39;t know what the ramifications of this suggestion would be<br>&gt;&gt;&gt; for the people maintaining the CVS, but there are obviously<br>&gt;&gt;&gt; active developers who are frustrated by the policy and others who
<br>&gt;&gt;&gt; are just ignoring it.<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; - Kevin Reynen<br>&gt;&gt;&gt;<br>&gt;&gt;&gt;<br>&gt;&gt;&gt; On 5/24/07, *Tao Starbow* &lt;<a href="mailto:starbow@citris-uc.org">starbow@citris-uc.org
</a><br>&gt;&gt;&gt; &lt;mailto:<a href="mailto:starbow@citris-uc.org">starbow@citris-uc.org</a>&gt;&gt; wrote:<br>&gt;&gt;&gt;<br>&gt;&gt;&gt;<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt; aps to address this concern, we could create a dedicated
<br>&gt;&gt;&gt; module that<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt; simply provides the third party library in question and<br>&gt;&gt;&gt; little or no<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt; additional functionality as required by drupal. The the<br>
&gt;&gt;&gt; modules<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; that<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt; depend on it can do just that in the info files. Avoids<br>&gt;&gt;&gt; duplication<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt; and centralizes the management and ability to audit for
<br>&gt;&gt;&gt; security<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt; issues too boot.<br>&gt;&gt;&gt;<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; This is the approach Jeff Robins has taken with his<br>&gt;&gt;&gt; jQuery_update and<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; jQuery_interface modules, and I think it works very well.&nbsp;&nbsp;This
<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; approach<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; leverages Drupal&#39;s project versioning and dependency systems to<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; keep the<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; 3rd party (GPL) code insync with the Drupal code, and simplifies
<br>&gt;&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; instillation.<br>&gt;&gt;&gt;<br>&gt;&gt;&gt;<br>&gt;<br>&gt; --<br>&gt; Sean Robertson<br>&gt; Web Developer<br>&gt; NGP Software, Inc.<br>&gt; <a href="mailto:seanr@ngpsoftware.com">seanr@ngpsoftware.com
</a><br>&gt; (202) 686-9330<br>&gt; <a href="http://www.ngpsoftware.com">http://www.ngpsoftware.com</a><br>&gt;<br><br></blockquote></div><br>