Skip to content
swannodette edited this page Sep 13, 2010 · 18 revisions

Installation

You need to install MySQL and a copy of WordPress – there’s a lot literature on the web about this. Once wordpress is installed and configured you need to do a couple of steps to get ShiftPress running.

Switch into the plugins directory:

$ cd WP_INSTALL_DIR/wp-content/plugins

Clone the shiftpress repository (using a terminal). In order get everything working you should do all of the following:

$ git clone git:/ShiftSpace/shiftpress.git
$ cd shiftpress
$ git submodule init
$ git submodule update
$ cd shiftspace
$ git branch --track shiftserver-lite origin/shiftserver-lite
$ git checkout shiftserver-lite
$ git submodule init
$ git submodule update

You also need to configure ShiftSpace:

$ python shifty.py shiftpress http://url/to/your/wordpress/wp-content/plugins/shiftpress/shiftspace

And you need to build ShiftSpace:

$ python shifty.py build

Apache Configuration

On some systems Apache may not be configured to allow .htaccess files to override the settings in httpd.conf.

Open your httpd.conf file (it’s location differs depending on your system, for example under OS X 10.5 or 10.6 it’s in /etc/apache2 and search for the following line:

AllowOverride None

Replace this with:

AllowOverride All

On some systems you may also need to change the conf file for your user. You should see a directory called users in the apache2 direction. There should be configuration that matches your username. Change AllowOverride setting there as well.

Hacking

ShiftSpace provides a global SSApp object for interaction with ShiftSpace resources. This makes it easy to test things out with FireBug for example.

Try typing the following into your FireBug console:

> SSApp.confirm(SSApp.get("shift", 1))

This should fetch a shift from the sqlite3 database and print out it’s contents into FireBug. You might wonder why you have to use two functions to get a something from the database, this is because ShiftSpace uses a library called Promises. We’re not going to get into it here, but suffice to say this library greatly simplifies AJAX programming at the expense of requiring a little more typing at JavaScript consoles.

Known Issues

Entering into the ShiftPress Database

In order to save shifts as comments, the user must chmod both the shiftspace.sqlite3 file and the server folder. A 777 will do fine. The plugin might require external documentation describing this process to the end-user.