I'm building a membership site for a client who uses the Infusionsoft CRM for product (course) subscriptions and payments.
They're currently running the membership site on Wordpress with the Memberium plugin handling the Infusionsoft integration, but they're moving away from Wordpress.
The Infusionsoft-related functionality I'm looking for:
- Users sign-up / opt-in via Infusionsoft forms (this is a given)
- Credentials get saved into Infusionsoft (the form handles this)
- Users log into the app with their Infusionsoft credentials
- Two-way sync between the app & Infusionsoft (changes to profile / subscriptions / payment info made by the user in the app get saved into Infusionsoft)
- Permission levels: Users have limited access to pages after log-in, based on the products they subscribed for (products are in Infusionsoft). i.e.: a user subscribed to the cheapest plan will see content associated with that products, and will have 3 entries in the main nav; but a user who subscribed to the most expensive package will see all the content and will have 5 entries in the main nav. There are 3 membership levels in total.
The memberium plugin handles these (and much more) easily, but I need to have the same functionality outside of Wordpress.
It shouldn't be hard to pull off, as the official Infusionsoft PHP client Library has support for Laravel and there are multiple versions of Laravel 5 Ports of the Infusionsoft PHP SDK on Packalyst.
The non-infusionsoft functionality I'm looking for:
- Forum: a proper forum with the ability for logged in users to start threads, comment, etc
- Event calendar containing upcoming events, scheduled video releases,etc.
- Ability for admins to upload videos, edit content, publish blog post.
- Push notifications Android & iOS app versions (packaged Chrome, have the Android & iOS API keys to use for the notifications)
The client is expanding from the UK and going global. I'm thinking of using MongoDB.
So my questions are:
- Should I use MongoDB or should I stay away and go with classic MySQL?
- Does MongoDB have potential issues with Infusionsoft or Laravel 5?
- OctoberCMS vs Laravel Backpack? Both handle the blog posts, the content uploads & the calendar out of the box.
- Are there any known issues with Infusionsoft integration & OctoberCMS running a modified Laravel?
- Push Notifications? Should Infusionsoft handle these or the app itself?
- Suggestions for packages? I saw quite a few things on Packalyst for everything.
I haven't used Laravel since 4.2 and I've never done anything with Infusionsoft.
I did some reseach but the results were mixed in terms of Infusionsoft integration and most of the results were for older Laravel versions or the older version of the Infusionsoft API.
Sorry for the TLDR post, it's my 1st question on StackOverflow :)
Any insight to Infusionsoft integration & Laravel 5, or suggestions for packages to use would be welcome :)
Particularly for the forum & the push notifications (in case those are not handled via Infusionsoft).