Some of the sites that I have built with CodeIgniter are due for updates and I want to investigate the potential benefits of turning them into EE sites. The primary reason being that they really are not web-applications but rather web-sites although they require a lot of form work - which is application level stuff.
I think that all the sites would generally benefit from Expression Engine for the content management part. But they also have some very complex forms and processes to deal with. I’m not certain if those can be handled effectively within Expression Engine.
So I’m interested to hear how someone with a lot of experience in EE would approach the projects and if - in fact - they would choose Expression Engine for that. As I assume that the answer would be EE, I would also be interested in getting some idea on how much customization work (modules, extensions) I might have to build to accomplish my goal.
Project 1
This site is mostly a membership site of about 1800. The ‘public’ facing portion gives news updates, something akin to blog posts and resource information like other site links, publications, etc. Those things could probably be handled well by EE. Additionally the user-to-user as well as admin-to-users broadcast is something they currently don’t have and would really like.
The site has multiple forums (called workspaces) and access control is per-user. So some members won’t have forum access at all, some only to ‘public’ forums, others again to specific ‘Interest Groups’ forums. Can the EE forum module handle this sort of restriction?
Also within a forum they currently have a document-sharing functionality. It’s not like attaching files to a forum post. On the ‘thread’ list page, they basically have another block, which lists documents for the forum. Members can upload new and revised documents. I would assume that something like this is not in the scope of the EE forum module. So the question then becomes whether I can ‘patch in’ code on the forum templates that would allow me to run my on backend scripts to ‘fetch’ the forum related documents and implement my own functionality?
Lastly, there are a bunch of ‘multi-page’ forms. The member sign-up is a 5 page process. Right now I do all of this with CI, transporting inputs through the session to a final stage into custom database tables. How would I handle this in EE? All of the forms also come with a feature that lets the user ‘save’ the form in it’s current state - triggering an email with a ‘permalink’ to the user, letting them return and continue their submission at a later time. How to do that with EE? A custom module for this specific purpose, much like I would write a custom controller paired with models and views in CI?
Along the same lines there’s also functionality where users can pay dues ‘online’. I’ve written the AuthorizeNet integration in CI. Can I reuse that or would I need to re-implement it as a module?
Project 2
If I can solve the problems above (mostly form/application stuff), then the only thing I need to consider for this project is multiple languages. And by that I don’t just mean straight translations of UI elements.
First of - I need to restrict access to a particular language to a given [group of] users, so that they can’t dabble in other languages. I want to access the various languages by url - e.g. site.com/en/....
There is a basic ‘pool’ of static content that should render on all languages. E.g. if the super-user creates a new page, they should be able to decide which languages/sites this page should show up in. If a translation is not available, it should use the default content. But the various language admin should have the ability to create a translation of that content which would then become visible instead.
I think that privilege wise this could probably be done with the multiple-site manager? Where each language would be defined as a site? So I still need to figure out how display default content for some pages as long as they are not translated.
Sound like fun projects? Hope you can make me feel good about accomplishing them with EE and give me an idea of how custom work I’d have to do.
Thanks much in advance,
Juergen