[horde] Debian HTML Editor Broken
Andy Dorman
adorman at ironicdesign.com
Wed Nov 5 21:46:52 UTC 2014
Let me start by saying that I agree this is most likely a Debian
packaging issue. But I have been banging my head up against this for
weeks now and am out of ideas about what to look at or try next and I
hope someone with a working installation from another version might be
able to help.
What I am trying to figure out is how the Debian packaging for
php-horde-editor (2.0.4) and Horde (5.2.1) and/or Imp (6.2.2) should be
configured for the HTML/CKEditor (4.4.4) to work correctly. I hope this
can be determined by how other successful installations are set up to
handle the various sym links that are needed to make it work.
Here is what I am currently dealing with:
The current Debian fs structure looks like this:
CKEditor - /usr/share/javascript/ckeditor/
Bootstrap - /usr/share/twitter-bootstrap/
Horde Imp - /usr/share/horde/imp/
Horde Imp js - /usr/share/horde/imp/js
Imp ckeditor files (some, not all) - /usr/share/horde/imp/js/ckeditor
The problems start when you open Imp's compose window and CKEditor tries
to fetch it's loader file from CKEDITOR.getUrl( 'core/loader.js' )
which causes an http request for /imp/core/loader.js which does not exist.
It is messy, but most of the initial loading problems can be fixed by
adding sym links in the base horde/imp/ directory pointing to
appropriate imp/js/ckeditor files which are in turn linked to CKEditor's
javascript/ckeditor/ dirs & files.
imp/adapters -> js/ckeditor/adapters
imp/bender.js -> js/ckeditor/bender.js
imp/ckeditor.js -> js/ckeditor/ckeditor.js
imp/config.js -> js/ckeditor/config.js
imp/contents.css -> js/ckeditor/contents.css
imp/core -> js/ckeditor/core
imp/lang -> js/ckeditor/lang
imp/plugins -> js/ckeditor/plugins
imp/skins -> js/ckeditor/skins
imp/styles.js -> js/ckeditor/styles.js
However, after the compose window opens and the above ckeditor files are
successfully fetched, when you click on the HTML editor checkbox,
htmlcheckbox,tougher problems pop up:
1. The compose window tries to pull in imp/core/_bootstrap.js which does
not exist anywhere in Horde that I could find. So I added a messy
symlink to point core/_bootstrap.js to
/usr/share/twitter-bootstrap/files/js/bootstrap.js No idea if this is
the correct file.
2. The compose window tries to pull in
/imp/plugins/pasteattachment/plugin.js which resides at
/imp/js/ckeditor/pasteattachment.js (but because of the initial sym
links, imp/plugins/ points to CKEditor's
/usr/share/javascript/ckeditor/plugins/ directory)
Again, if you have root access and know how to do sym links you can do a
very messy fix by adding a new pasteattachment directory for CKEditor
and pasteattachment/plugins.js symlink pointing back to
imp/js/ckeditor/pasteattachment.js.
3. The compose window also calls /js/ckeditor/ckeditor_basic.js which
does not exist in horde/js/ nor anywhere on my server that I could
find... So again I did a messy manual fix by adding a
horde/js/ckeditor/ directory and then a sym link to point
horde/js/ckeditor/ckeditor_basic.js to
/usr/share/javascript/ckeditor/ckeditor.js I suspect this is NOT the
correct file to provide for a request for ckeditor_basic.js, but I could
not find anything else that looked even close.
And finally, even after all the files are successfully loaded, the HTML
editor doesn't actually come up....probably because ckeditor.js is NOT a
substitute for ckeditor_basic.js or I have linked to the wrong file for
imp/core/_bootstrap.js
So as you can see the latest Debian install needs help. I think all the
above comes down to two questions I am trying to answer....
1. What URL does a non-debian install use to fetch the ckeditor files?
Does it try to fetch "/imp/core/loader.js" or does it possibly fetch
from "imp/js/ckeditor/" ? or some other URL? And where is this URL
determined? (sorry, yes this is more than one question...but they are
all related ;-)
2. What sym links are set up for a non-debian install to point the
following compose window URLs to the appropriate server fs directories &
files?
/imp/core/loader.js
/imp/core/_bootstrap.js
/imp/plugins/pasteattachment/plugin.js
/js/ckeditor/ckeditor_basic.js
Thanks for any and all help and my apologies for the long explanation.
--
Andy Dorman
More information about the horde
mailing list