@@ -113,7 +114,7 @@ properly configure and integrate it into your site.</p>
...
@@ -113,7 +114,7 @@ properly configure and integrate it into your site.</p>
webchat experience and that you have control over the data. The latter being a
webchat experience and that you have control over the data. The latter being a
requirement for many sites dealing with sensitive information.</p>
requirement for many sites dealing with sensitive information.</p>
<p>You’ll need to set up your own XMPP server and in order to have
<p>You’ll need to set up your own XMPP server and in order to have
<aclass="reference internal"href="#session-support">Session support</a> (i.e. single-signon functionality whereby users are authenticated once and stay
<aclass="reference internal"href="#session-support">Session Support</a> (i.e. single-signon functionality whereby users are authenticated once and stay
logged in to XMPP upon page reload) you will also have to add some server-side
logged in to XMPP upon page reload) you will also have to add some server-side
code.</p>
code.</p>
<p>The <aclass="reference internal"href="#what-you-will-need">What you will need</a> section has more information on all these
<p>The <aclass="reference internal"href="#what-you-will-need">What you will need</a> section has more information on all these
...
@@ -126,7 +127,7 @@ requirements.</p>
...
@@ -126,7 +127,7 @@ requirements.</p>
<p><em>Converse.js</em> implements <aclass="reference external"href="https://en.wikipedia.org/wiki/Xmpp">XMPP</a> as its messaging protocol, and therefore needs
<p><em>Converse.js</em> implements <aclass="reference external"href="https://en.wikipedia.org/wiki/Xmpp">XMPP</a> as its messaging protocol, and therefore needs
to connect to an XMPP/Jabber server (Jabber is really just a synonym for XMPP).</p>
to connect to an XMPP/Jabber server (Jabber is really just a synonym for XMPP).</p>
<p>You can connect to public XMPP servers like <ttclass="docutils literal"><spanclass="pre">jabber.org</span></tt> but if you want to
<p>You can connect to public XMPP servers like <ttclass="docutils literal"><spanclass="pre">jabber.org</span></tt> but if you want to
have <aclass="reference internal"href="#session-support">Session support</a> you’ll have to set up your own XMPP server.</p>
have <aclass="reference internal"href="#session-support">Session Support</a> you’ll have to set up your own XMPP server.</p>
<p>You can find a list of public XMPP servers/providers on <aclass="reference external"href="http://xmpp.net">xmpp.net</a> and a list of
<p>You can find a list of public XMPP servers/providers on <aclass="reference external"href="http://xmpp.net">xmpp.net</a> and a list of
servers that you can set up yourself on <aclass="reference external"href="http://xmpp.org/xmpp-software/servers/">xmpp.org</a>.</p>
servers that you can set up yourself on <aclass="reference external"href="http://xmpp.org/xmpp-software/servers/">xmpp.org</a>.</p>
</div>
</div>
...
@@ -166,7 +167,7 @@ website. This will remove the need for any cross-domain XHR support.</p>
...
@@ -166,7 +167,7 @@ website. This will remove the need for any cross-domain XHR support.</p>
<h2><aclass="toc-backref"href="#id6">Server-side authentication</a><aclass="headerlink"href="#server-side-authentication"title="Permalink to this headline">¶</a></h2>
<h2><aclass="toc-backref"href="#id6">Server-side authentication</a><aclass="headerlink"href="#server-side-authentication"title="Permalink to this headline">¶</a></h2>
<divclass="section"id="session-support">
<divclass="section"id="session-support">
<h3><aclass="toc-backref"href="#id7">Session support</a><aclass="headerlink"href="#session-support"title="Permalink to this headline">¶</a></h3>
<h3><aclass="toc-backref"href="#id7">Session Support</a><aclass="headerlink"href="#session-support"title="Permalink to this headline">¶</a></h3>
<p>It’s possible to enable single-site login, whereby users already
<p>It’s possible to enable single-site login, whereby users already
authenticated in your website will also automatically be logged in on the chat server,
authenticated in your website will also automatically be logged in on the chat server,
but this will require custom code on your server.</p>
but this will require custom code on your server.</p>
...
@@ -196,7 +197,7 @@ practical.</p>
...
@@ -196,7 +197,7 @@ practical.</p>
<p>You’ll most likely want to implement some kind of single-signon solution for
<p>You’ll most likely want to implement some kind of single-signon solution for
your website, where users authenticate once in your website and then stay
your website, where users authenticate once in your website and then stay
logged into their XMPP session upon page reload.</p>
logged into their XMPP session upon page reload.</p>
<p>For more info on this, read <aclass="reference internal"href="#session-support">Session support</a>.</p>
<p>For more info on this, read <aclass="reference internal"href="#session-support">Session Support</a>.</p>
<p>You might also want to have more fine-grained control of what gets included in
<p>You might also want to have more fine-grained control of what gets included in
the minified Javascript file. Read <aclass="reference internal"href="#configuration">Configuration</a> and <aclass="reference internal"href="#minification">Minification</a> for more info on how to do
the minified Javascript file. Read <aclass="reference internal"href="#configuration">Configuration</a> and <aclass="reference internal"href="#minification">Minification</a> for more info on how to do
<h1><aclass="toc-backref"href="#id22">Translations</a><aclass="headerlink"href="#translations"title="Permalink to this headline">¶</a></h1>
<p>The gettext POT file located in ./locales/converse.pot is the template
containing all translations and from which for each language an individual PO
file is generated.</p>
<p>The POT file contains all translateable strings extracted from converse.js.</p>
<p>To make a user facing string translateable, wrap it in the double underscore helper
function like so:</p>
<divclass="highlight-python"><divclass="highlight"><pre><spanclass="n">__</span><spanclass="p">(</span><spanclass="s">'This string will be translated at runtime'</span><spanclass="p">);</span>
</pre></div>
</div>
<p>After adding the string, you’ll need to regenerate the POT file, like so:</p>
<divclass="highlight-python"><pre>make pot</pre>
</div>
<p>You can then create or update the PO file for a specific language by doing the following:</p>