views:

6207

answers:

9

In my company we are thinking of moving from wiki style intranet to a more bespoke CMS solution. Natural choice would be Joomla, but we have a specific architecture. There is a few hundred people who will use the system. System should be self explainable (easier than wiki).

We use a lot of tools web, applications and integrated within 3rd party software. The superior element which is a glue for all of them is API. In example for the intranet tools we do use Django, but it's used without ORM, kind of limited to templates and url - every application has an adequate methods within our API. We do not use the Django admin interface, because it is hardly dependent on ORM.

Because of that Joomla may be hard to integrate. Every employee should be able to edit most of the pages, authentication and privileges have to be managed by our API.

How hard is it to plug Joomla to use a different authentication process? (extension only - no hacks)

If one knows Django better than Joomla, should Django be used?

+5  A: 

Django isn't a CMS. If you want to build an application then you'd use Django (by the sound of your post you understand that though). If you just want to be able to edit/store content and have permissions for your users - a CMS would be the way to go. I really don't know anything about Joomla though. It should be easy enough to mock up a hack to do whatever authentication you need - even if that's just a POST directly to the server.

Django will take a long time to get up to the point where you're using it for the purposes you mention. The admin interface will need to be used (or you're building a CMS from scratch) - which means creating models to model the content you already own. Then you have to customise each model page, and 'plug in' whatever authentication system you want.

Lot of work.

Josh Smeaton
+3  A: 

Perhaps you can check Django CMS.

Oli
A: 

Django CMS way of work requires using a built-in ORM model and an admin interface.

zalun
+2  A: 

Joomla! has authentication plugins; you can write your own without hacking the core. When someone attempts to log into your site, it will go through all published authentication plugins (in the order you set) until one returns true. If you only want to use one method, unpublish all of the other plugins except for your custom one.

Also, Joomla! already has a plugin for LDAP if your system supports this.

The part that may be more difficult would be managing specific privileges through the API. Joomla! currently lacks group level access control; it currently has permission level access control (Editors, Publishers, Administrators, etc...).

jlleblanc
+1  A: 

As you tagged your question with Python, you can have a look at plone (http://plone.org)

KornP
A: 

Thank you for all the answers.

Plone option cancelled on today's meeting.

Using Joomla will involve quite a lot of coding to make it act as the rest of the intranet. I think that writing a CMS in Django (with "stealing" some code from existing cms solutions) will win. Newforms are very interesting and it shouldn't be that hard (I wrote already a CMS system in PHP build on my own framework - used on about 15 sites)

zalun
+1  A: 

Plone option cancelled on today's meeting.

In my view Plone is very powerful for building an intranet.

Some references:

python
A: 

Thanks for that. The system has been chosen behind my back by higher management.

It's SilverStripe.

  • Slow Admin interface
  • No experienced programmer in the company knowing this product
  • Implemented by a graphic designer who's leaving in about two weeks, but "he can do consulting as he's going to be a freelancer"

I'm not happy at all

Thanks again.

zalun
A: 

If you use FLEXIcontent and FLEXiaccess you can get granular level permissions on Joomla

Edgar