-
Notifications
You must be signed in to change notification settings - Fork 1
System Requirements
Open311-SMS will work with a web server capable of running PHP. Accommodation will need to be made to support the Open311 interface, which normally is implemented using Apache's mod_rewrite.
Apache (recommended)
The Open311 interface is implemented relying on Apache's mod_rewrite to route requests to the correct PHP script.
PHP >= 5.3
This application relies on code features only found in PHP 5.3 and greater. In addition there are particulay PHP libraries that we rely on. Make sure these are available in your PHP install.
This extension is enabled by default in most PHP installations.
Requests to the Open311 Server are implemented using curl functions.
We support integrating with LDAP or ADS directories for user information and, if desired, authentication.
PHP needs the following ini settings that might differ from the default php.ini
- register_globals: off
- With PHP 5.3 this should be the default, but some hosts have it enabled.
- error_reporting:
- Open311 is written to work with no errors with error_reporting set to
E_ALL | E_STRICT
.
- Open311 is written to work with no errors with error_reporting set to
- arg_separator:
- To do valid XHTML strict, hrefs cannot be written with plain
&. Rather than using entities, we chose to use the W3C recommendation of using
the semicolon in all markup. PHP can use both semicolon and ampersand when
parsing url parameters.
- arg_separator.output = ";"
- arg_separator.input = ";&"
- To do valid XHTML strict, hrefs cannot be written with plain
&. Rather than using entities, we chose to use the W3C recommendation of using
the semicolon in all markup. PHP can use both semicolon and ampersand when
parsing url parameters.
There are several drop-in replacements for MySQL.
Open311-SMS uses a few features from the ZendFramework. You will need to download the
ZendFramework and put it somewhere accessible by Apache. In configuration.inc
,
you'll set the path to wherever you put it. The application uses ZF1.
The javascript and CSS for Open311-SMS relies on the Bootstrap and jQuery libraries. Currently, the application uses the bootstrap library hosted here and here and the jQuery hosted here. However, if you want, you can download both the libraries and host them yourself. In configuration.inc, point to whatever host you're using for Bootstrap and jQuery.
CAS (Single Sign on)
For improved security, all City of Bloomington web applications are configured to use CAS for authentication. This way, passwords never need to be stored in individual web applications and users only ever type their passwords into one website. If you have your own CAS server, you can configure CRM to do CAS authentication.
You will need to download the phpCAS library from https://wiki.jasig.org/display/CASC/phpCAS.
CAS authentication can be disabled by leaving it undefined in configuration.inc
Skidder (External Error Logging)
In the City of Bloomington, we have a central web service, called Skidder, that all web applications report and errors to. Skidder collects the errors, reports them to developers, and provides for browsing, slicing, and dicing the error reports. Direct notification to developers when errors occur is the best way to make sure bugs are fixed quickly.
Skidder is open source and available at http://code.google.com/p/skidder
Skidder reporting can be left undefined in configuration.inc
, if not not desired.