Hi Steve,
thank you for your reply.
These are the steps that I followed, and they may be useful to others.
I. Importing Evolution data into Revolution
1)Download the "revogateway" package for Evolution from
http://modxcms.com/extras/download/1307/1467
2)Uncompress it, and copy the "revogateway" folder to the assets/snippets folder of your Evolution installation
3)In your Revolution installation, install the Provisioner package through "System -> Package" Management
4)Go to "Components -> Provisioner", and enter the following details on the "administration" tab:
Account: this is a username to a modx administrator’s account
Password: this is the password for that username
URL: Just the base URL for your site. E.g.
http://www.example.com/
Remote Site Identifier: leave blank
Remote site type: Evolution
Action: Login
Click "Go"
5)Click on "Resources", click the refresh button, and then expand the tree until you find the document you’re looking for. Right click on it and choose either "Import" or "Import Convert Tags".
II. Accessing remote sites that are password-protected
If your remote site is password-protected using Apache’s base authentication, you make it work by hard-coding the username and password into this file:
{root}/core/components/provisioner/model/provisioner/provisioner.class.php
function curl_init(){
$this->_curlSession = curl_init();
curl_setopt($this->_curlSession, CURLOPT_HTTPAUTH, CURLAUTH_BASIC ) ;
curl_setopt($this->_curlSession, CURLOPT_USERPWD, "username:password");
}
Note: replace "username" and "password" in the function above with the appropriate values for your site.
Then search for "$this->_curlSession = curl_init();" and replace it with "$this->curl_init();"
III. Recursive import of folders
Right now, it seems as though Provisioner can only import one resource at a time. If you choose a folder, it will only import the folder, but none of the items under it. Have you experimented with ways to recursively import all the items under a folder? For a large site, it becomes impractical to import resources one-by-one.
I have created an import script that takes a Modx folder (a.k.a. document / resource) id and an array mapping old to new template / template variable ids, and creates an SQL file that recreates the entire folder and all its children.
Since Provisioner seems to make one AJAX request per document, importing an entire tree of documents (about one to two thousand at a time) would be slow and impractical.
I’m wondering if there’s a way to combine your interface and my script, so that when you right click a folder and choose to export it, it just sends over a compressed SQL file that downloaded, uncompressed and imported into the target system.
Thoughts / comments on this approach?
Thanks again for making a great piece of software. Clearly, you’ve put a ton of work into it already, and the code is well written and documented.