diff --git a/openlp/plugins/remotes/html/openlp.js b/openlp/plugins/remotes/html/openlp.js
index 24c7cec2e..5ace417b1 100644
--- a/openlp/plugins/remotes/html/openlp.js
+++ b/openlp/plugins/remotes/html/openlp.js
@@ -140,7 +140,7 @@ OpenLP.Namespace.create("OpenLP.Remote", {
var args = {};
if (eventData != null && eventData != "")
{
- args.q = $.parseJSON(eventData);
+ args.q = escape(eventData);
}
$.ajax({
url: url,
diff --git a/openlp/plugins/remotes/lib/httpserver.py b/openlp/plugins/remotes/lib/httpserver.py
index c7dd2e5d5..7836bda8a 100644
--- a/openlp/plugins/remotes/lib/httpserver.py
+++ b/openlp/plugins/remotes/lib/httpserver.py
@@ -250,13 +250,19 @@ class HttpConnection(object):
def process_request(self, event, params):
"""
Client has requested data. Send the signal and parameters for openlp
- to handle, then listen out for a corresponding _request signal
+ to handle, then listen out for a corresponding ``_request`` signal
which will have the data to return.
- For most event timeout after 10 seconds (i.e. incase the signal
- recipient isn't listening)
- remotes_poll_request is a special case, this is a ajax long poll which
- is just waiting for slide change/song change activity. This can wait
- longer (one minute)
+
+ For most events, timeout after 10 seconds (i.e. in case the signal
+ recipient isn't listening). ``remotes_poll_request`` is a special case
+ however, this is a ajax long poll which is just waiting for slide
+ change/song change activity. This can wait longer (one minute).
+
+ ``event``
+ The event from the web page.
+
+ ``params``
+ Parameters sent with the event.
"""
log.debug(u'Processing request %s' % event)
if not event.endswith(u'_request'):