I love Vanilla 1 to bits and was keen to try Vanilla 2 but kept running into issues which I could not resolve. I've finally got it up and running with the help of some helpful folk on this forum so I decided to write an extended how-to for Vanilla 2 in case you encounter similar problems to me.
I'd like to reiterate the developers' comments first by saying Vanilla 2 is still in development so you should bear this in mind if you intend on using it on a live site. It could be prone to unexpected bugs/behaviour. If you're unsure/concerned, use Vanilla 1 instead.
Extended How-to install Garden/Vanilla 2
1. Download the latest stable release of Garden from GitHub. What's Garden? It's the platform on which Vanilla runs - but don't fret, Vanilla forum is bundled in with this download.
2. Extract the .zip or .tar and copy the contents into the desired folder on your server. Remember to upload the .htaccess file in the root directory which may not be visible to you if you have these types of files hidden. Most FTP programs have an option to show invisible files if it isn't already set by default.
3. In /conf/config-defaults.php consider uncommenting line 47: // $Configuration['Garden']['Errors']['MasterView'] = 'deverror.master.php'; // <-- Use this error master view when debugging This will enable verbose error messages and is very useful when installing and setting up. These messages will help other forum users with diagnosing any problems you encounter. Of course, once happy with your setup, it's recommended to comment out this line once again, so users encounter 'pretty errors'.
4. Grant Read/Write permissions (777) to /cache/, /conf/, and /uploads/
5. Create a database (name does not matter).
6. Browse to your install folder in your web browser, and follow the instructions on-screen.
As I said, if you encounter any errors and have completed step 3, you should have a verbose error - post this and any information about your server (PHP version etc.) and the steps you performed leading up to the error into the community forums.
Hope that helps - thanks to @benno and @bean for their help in getting my install working. I used their advice, my experience and the Documentation to provide the above information.
Try it out - let us know what you think. If you are a Vanilla 2 early adopter (ie. you've downloaded a copy of Garden/Vanilla from GitHub and you're running it somewhere), there are instructions on how to update your database for search here:
While we've been hard at work getting Vanilla 2 ready for it's official release, others in the community have been hard at work fixing lingering bugs and adding feature refinements to Vanilla 1. Vanilla 1.1.10 is now available. The main changes in this release are replacement of deprecated functions, and updates to Scriptaculous and Prototype.
Vanilla 1.2 is going to be a great, significant release. There will be plenty of new features, many of which will be included as new extensions, allowing them to be easily disabled and enabled easily.
Some new features are:
Automatic image width reduction by window size (an upcoming update to HTML Formatter), a feature similar to the one on IP.Board, so that images never create horizontal scrollbars on the page; images will either be too small in width to be sized, or the width will be reduced to the perfect size.
Minification, compression, and a bunch of other speed optimizations (an upcoming extension called Minify) to make the forums load faster for users, especially first-time users.
Whisper notifications (the Whisperfi extension) so that users don't miss whispers
Some will be enabled by default, others won't be. So we want to know, which extensions (if any) do you think add essential functionality to Vanilla 1? There are so many really awesome extensions out there, but we don't want to include most of them, just the ones that add a very commonly used functionality, ones that will be useful for 90% of Vanilla installations.
How could I add a custom field to the topic starter form. In other words, right now you can type in a title, choose the category and type your message. But, I want to add one additional text field. Would anyone be willing to tell me how this would be done?
Pretty sure I brought this up with version 1 of Vanilla too..
Is there really a need to make 14 http requests for each page before it's even rendered? There's so many calls for separate JQuery files its unbelievable.
I have downloaded the latest vanilla/garden from git and uploaded everything to my test page iphonedevforums.com/new/ I tried to install and it gave me this error http://drp.ly/xMO9k now anytime I go anywhere like iphonedevforums.com/new/ it gives me this http://drp.ly/xMP3y . I am on rackspace and my .htaccess looks like this
I'm wondering if anyone else has encountered this error trying to install Vanilla 2. When I hit Continue on the initial install screen I get a 500 internal server error and my PHP error logs show this message:
"Request exceeded the limit of 10 internal redirects due to probable configuration error."
I think this suggests that the installer is trying to execute an infinite redirect loop. Changing the permissions on my folders as the install.txt file suggests has no effect.
So I've uploaded my very alpha CKEditor plugin. Not as much work as I'd feared, it only required two modifications to Vanilla 2 proper:
The nl2br regex in the Html() formatter should have a config option
There should be a RemoveJsFile method to complement the AddJsFile method.
Now, the RemoveJsFile method could return a bool of whether or not the file existed, but as it could be found multiple times I suppose maybe the number of times found would be a good return value. (E.g. the count of $keys)
As coded, this plugin might or might not be compatible with Vanilla Replies or VanillaCommentScore as I encountered an error at one point and disabled both of them, though it might be the JS' fault.
Also, @Mark, is it possible to override JS or CSS from within a plugin, avoiding the need to remove 'discussion.js' just to add it again with a slightly different name? Or should we work on making the JS more extensible? The main incompatibility lies within jQuery's serialize() of the form, which doesn't seem to call the textarea's overridden val() to get the CKEditor's changes and so instead saves the original unmodified textarea that was hidden. One alternative could be a trigger for such changes before serializing the form.
Oh and another change I've forgotten to make is to ensure all IDs are unique for textareas. (Right now they totally aren't, so my start.js overcomes that as necessary.) And to swap to using Google for hosting jQuery, though that could be part of future performance optimizations like 1.2 has received, I guess.
CKEditor require HTML Formatter to be installed and enabled, you should also save your sanity and formatting by turning the HTML_CONVERT_NEWLINES option to "0" (zero).
I'm starting an early French (fr-FR) translation of Garden and Vanilla 2. I've understood that all the translations have to be in the proper application/plugin locale/ folder.
I need a list of all the strings I have to translate. Does such a list exist or do I need to create it myself by searching all the calls to Gdn::Translate() method?
I'm coding a website and I included Vanilla 2 in it. Now I want to start the login system of the site. but is it possible to login from the normal site into the Vanilla system? I mean that I'm logged in in the site and the forum with one login with the use of the Vanilla system?! Is that possible with SingleSignOn and if yes; how could I use that "bridge"? I didn't understand this article really: http://vanillaforums.org/page/SingleSignOn
I've just installed Vanilla 2 and I'm trying to add some plugins. I was under the impression that I just had to upload the new plugins into the plugins folder (just like how wordpress plugins work), but I've done that and none of the new plugins are showing up. Am I doing something wrong?
First off, let me say that I am impressed with the quality of the Vanilla 2 and Garden codebase! So far, I haven't found any of the heinous crimes that PHP allows one to commit, and it seems like you have a sensible OO design and plugin architecture.
I work for FoxyCart, and we have a pretty large Vanilla 1 board that we'd like to move to Vanilla 2; there are many new features that we would really enjoy. One old feature, though, that we use a lot is the email notification feature. I see that it's planned in your roadmap, and I'm wondering how much of that is completed right now.
I like what I see so far with regard to notifications, and I'm wondering if email support is just around the corner, or if I should dive in and write a notification plugin myself. The main things we like about the current notifications are: - Per-category new conversation notifications. (we want to know when people ask new questions) - Conversation updates that notice when we visit the forum. (we want to know when someone updates a conversation, but email's not important if we're currently working on the board)
The most important feature of a new notification system for us is that it imports the old notification settings, so that people who are currently subscribed continue to receive updates.
Anyway, it'd be great if someone could tell me the status of all of this before I go even deeper into the Garden / Vanilla 2 code. Thanks in advance! :-)
Sorry if this has been asked before, but I couldn't dig up a recent thread on the topic so I thought I'd ask here.
Is Vanilla 2 at the stage whereby it can be hosted live without fear of major updates that will render it dead come future updates? I know I shouldn't use it live yet, I'm just curious to see if it's possible safely.