We're definitely open to the idea of integration with 3rd party tools. There are, however, a few things to consider:
What is the process for creating surveys going to be?
- Will the content author need to log into a separate tool?
- How will the author link the survey into the site?
How well connected to the rest of the site will new surveys be?
- Will surveys appear in the regular SilverStripe site map?
- Will the survey be presented in a similar design to the rest of the site?
- If the survey is secured, can it be secured using SilverStripe's member database and authentication system?
You're usually going to get the tightest integration with the rest of the site by building a greenfield SilverStripe module. This *can* be more work, but it can also be a lot of work to get a really seamless integration between two products, particularly products that involve administrators creating content for a website, such as a survey tool.
Having looked at LimeSurvey, it seems like a very complex system. But I haven't researched survey systems enough to compare.
One potential integration mechanism for LimeSurvey would be create a LimeSurveyPage page type. It would show one of these LimeSurvey surveys inside an iframe. That way, you could still have the survey be "part of the site" by having main site nav shown outside the iframe.
If the LimeSurvey data were stored in the same MySQL database as your SilverStripe site, then you could query its database directly to get a list of active surveys. If you list these on a DropdownField in LimeSurveyPage::getCMSFields(), then you have a way of linking surveys to LimeSurveyPages.
Authentication would be trickier. You would probably want to extend the SilverStripe authentication mechanism to write member details to the LimeSurvey user tables as well. Once you have done that, you could have your LimeSurveyPage, when it loads, check who is currently logged in and update the cookies/session to set the authentication fields that LimeSurvey creates.