As part of the project http://ndla.no we have created a module (Content Browser) which makes it possible to insert any node into nodes. ie) Inserting node of content type X into node 123. This is done via an easy to use interface (via WYSIWYG API) for the user where he/she searches for the node to insert.
Every content type has its own template, by default via Drupal's own templating system, this can (and should) be overridden.
ContentBrowser uses tags which are expanded when the editor is active or when the node is viewed (read hook_filter())
ContentBrowser has similarities with http://drupal.org/project/insertnode and http://drupal.org/project/imagebrowser
But is way more dynamic thanks to the templating system and invocation of hooks.
Thanks for your time.
/Jonas
| Comment | File | Size | Author |
|---|---|---|---|
| #5 | contentbrowser.tar_.gz | 92.32 KB | jseffel |
| #1 | contentbrowser.tar_.gz | 95.69 KB | jseffel |
Comments
Comment #1
jseffel commentedModule attached.
Comment #2
avpadernoHello, and thank you for applying for a CVS account.
As per requirements, the motivation should include more than two sentences of module feature descriptions, and a comparison with the existing solutions.
Comment #3
jseffel commentedContent Browser offers:
- WYSIWYG plugin which currently only works for TinyMCE (CKEditor is in the making)
- Generous templating system. Any content template can have its own template ie) This makes in easy to integrate content modules like flashvideo, flashnode, audio, biblio etc etc
- Lets the administrator allow / disallow insertion of content types, if content type X is allows the user to select insertion method etc etc
- A generous set of hooks and drupal_alters, ie) altering the search query and relations, exposing fields which should be visible in the content - which makes it easy to add support for creative commons, your_module etc
- CCK fields are supported
- Allows insertion of attached files of a given node. Ie) A node has a PDF attached, make a link to the PDF instead of the node
- Two blocks. Block 1) While browsing node X which is inserted in node Y a block will appear showing the browsing user the the current node is used in node Y. Block 2) While browsing node Y a block appears showing the browsing user the node A, B and C is used in Node Y. This could be a must have for an organisation which must display the copyright if inserted media.
- (Code) The order of the attributes in the tag ([contentbrowser ==nid=123==css_class=foo==link_text=bar]) is of no importance
- Allows html in the captions (which tags are selected by the administrator)
Compared to InsertNode -
InsertNode does not come with a WYSIWYG plugin, does not allow theming, does not allow adding extra attributes, sees all content the same ie) the user can input any content type he/she wants to. No blocks.
Compared to ImageBrowser -
Only supports images, no hooks / alters, order of the tag is crucial, no blocks
Although InsertNode and ImageBrowser are great modules they only do one thing while Content Browser tries to please any administrator. ImageBrowser was an inspiration for me while writing Content Browser making ImageBrowser do what we needed would require a rewrite - and therefore Content Browser was made.
I have made a couple of bug fixes and added a lot of documentation since the last attachment - should I attach another version?
Comment #4
jseffel commentedComment #5
jseffel commentedAdded new version which has gone through the coder module.
CKEditor isnt fully working yet, only TinyMCE.
Comment #6
jseffel commentedAny action here?
Comment #7
avpadernoComment #8
zzolo commentedHi. Please read all the following and the links provided as this is very important information about your CVS Application:
Drupal.org has moved from CVS to Git! This is a very significant change for the Drupal community and for your application. Please read the following documentation on how this affects and benefits you and the application process:
Migrating from CVS Applications to (Git) Full Project Applications
Comment #9
avpadernoAs per previous comment, I am setting this issue to won't fix.
Since new users can now create full projects, applications have a different purpose and they are handled on a different issue queue. See Apply for permission to opt into security advisory coverage for more information.