Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/candy-chat/candy.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.travis.yml3
-rw-r--r--LICENSE1
-rw-r--r--Vagrantfile2
-rw-r--r--devbox/index.html14
-rw-r--r--devbox/nginx-default.conf4
-rw-r--r--devbox/provisioning.sh11
-rw-r--r--res/default.css1
-rwxr-xr-xsetup.sh1
-rw-r--r--src/candy.js1
-rw-r--r--src/core.js1
-rw-r--r--src/core/action.js1
-rw-r--r--src/core/chatRoom.js1
-rw-r--r--src/core/chatRoster.js1
-rw-r--r--src/core/chatUser.js1
-rw-r--r--src/core/contact.js8
-rw-r--r--src/core/event.js1
-rw-r--r--src/util.js1
-rw-r--r--src/view.js1
-rw-r--r--src/view/observer.js1
-rw-r--r--src/view/pane/chat.js1
-rw-r--r--src/view/pane/message.js1
-rw-r--r--src/view/pane/privateRoom.js1
-rw-r--r--src/view/pane/room.js4
-rw-r--r--src/view/pane/roster.js1
-rw-r--r--src/view/pane/window.js1
-rw-r--r--src/view/template.js1
-rw-r--r--src/view/translation.js1
-rw-r--r--tests/candy/unit/core/contact.js16
28 files changed, 67 insertions, 15 deletions
diff --git a/.travis.yml b/.travis.yml
index e8b54cf..b4b016c 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -11,9 +11,8 @@ before_script:
- sudo apt-get install -y nginx
- sudo mkdir -p /usr/share/nginx/html
- sudo cp ${TRAVIS_BUILD_DIR}/devbox/nginx-default.conf /etc/nginx/sites-available/default
+- sudo sed --in-place 's|{{ROOT_DIR}}|'"$TRAVIS_BUILD_DIR"'|g' /etc/nginx/sites-available/default
- sudo /etc/init.d/nginx restart
-- sudo ln -fs ${TRAVIS_BUILD_DIR} /usr/share/nginx/html/candy
-- sudo ln -fs ${TRAVIS_BUILD_DIR}/devbox/index.html /usr/share/nginx/html/index.html
- sudo apt-get install -y naturaldocs
- npm install -g grunt-cli bower
- npm install
diff --git a/LICENSE b/LICENSE
index 8378f92..7273d89 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,5 +1,6 @@
Copyright (c) 2011 Amiado Group AG
Copyright (c) 2012-2014 Patrick Stadler & Michael Weibel
+Copyright (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
diff --git a/Vagrantfile b/Vagrantfile
index 8f277b1..8682f53 100644
--- a/Vagrantfile
+++ b/Vagrantfile
@@ -13,6 +13,8 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.provision :shell, :path => "devbox/provisioning.sh"
+ config.vm.synced_folder ".", "/vagrant", type: "nfs"
+
config.vm.provider "virtualbox" do |v|
v.name = "candy"
v.customize ["modifyvm", :id, "--memory", 768]
diff --git a/devbox/index.html b/devbox/index.html
index 0881df5..3e8de12 100644
--- a/devbox/index.html
+++ b/devbox/index.html
@@ -3,16 +3,16 @@
<head>
<meta charset="utf-8">
<title>Candy - Chats are not dead yet</title>
- <link rel="shortcut icon" href="candy/res/img/favicon.png" type="image/gif" />
- <link rel="stylesheet" type="text/css" href="candy/res/default.css" />
+ <link rel="shortcut icon" href="res/img/favicon.png" type="image/gif" />
+ <link rel="stylesheet" type="text/css" href="res/default.css" />
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.js"></script>
- <script type="text/javascript" src="candy/libs.bundle.js"></script>
- <script type="text/javascript" src="candy/candy.bundle.js"></script>
+ <script type="text/javascript" src="libs.bundle.js"></script>
+ <script type="text/javascript" src="candy.bundle.js"></script>
<script type="text/javascript">
$(document).ready(function() {
- //Candy.init('/http-bind/', { // uncomment & comment next line if you'd like to use BOSH
- Candy.init('ws://localhost:5280/xmpp-websocket/', {
+ Candy.init('/http-bind/', { // uncomment & comment next line if you'd like to use BOSH
+ // Candy.init('ws://localhost:5280/xmpp-websocket/', {
core: {
// only set this to true if developing / debugging errors
debug: true,
@@ -23,7 +23,7 @@
// -> array of rooms to join after connecting
autojoin: ['test@conference.localhost']
},
- view: { assets: 'candy/res/' }
+ view: { assets: 'res/' }
});
Candy.Core.connect('localhost');
diff --git a/devbox/nginx-default.conf b/devbox/nginx-default.conf
index 6bad803..a5d0eda 100644
--- a/devbox/nginx-default.conf
+++ b/devbox/nginx-default.conf
@@ -1,6 +1,6 @@
server {
- root /usr/share/nginx/html;
- index index.html;
+ root {{ROOT_DIR}};
+ index devbox/index.html;
charset utf-8;
diff --git a/devbox/provisioning.sh b/devbox/provisioning.sh
index 309050b..33479db 100644
--- a/devbox/provisioning.sh
+++ b/devbox/provisioning.sh
@@ -3,6 +3,7 @@
# Vagrant provisioning script
#
# Copyright 2014 Michael Weibel <michael.weibel@gmail.com>
+# Copyright 2015 Adhearsion Foundation Inc <info@adhearsion.com>
# License: MIT
#
@@ -15,6 +16,12 @@ apt-get update
apt-get install -y liblua5.1-bitop prosody lua-event
+# Install Websockets module
+wget -O /usr/lib/prosody/modules/mod_websocket.lua http://prosody-modules.googlecode.com/hg/mod_websocket/mod_websocket.lua
+
+# Install Carbons module
+wget -O /usr/lib/prosody/modules/mod_websocket.lua http://prosody-modules.googlecode.com/hg/mod_carbons/mod_carbons.lua
+
# Place config
cp /vagrant/devbox/prosody.cfg.lua /etc/prosody/prosody.cfg.lua
@@ -25,11 +32,9 @@ cp /vagrant/devbox/prosody.cfg.lua /etc/prosody/prosody.cfg.lua
#
apt-get install -y nginx
cp /vagrant/devbox/nginx-default.conf /etc/nginx/sites-available/default
+sed --in-place 's|{{ROOT_DIR}}|/vagrant|g' /etc/nginx/sites-available/default/nginx-default.conf
/etc/init.d/nginx restart
-ln -fs /vagrant /usr/share/nginx/html/candy
-ln -fs /vagrant/devbox/index.html /usr/share/nginx/html/index.html
-
#
# Candy development dependencies
#
diff --git a/res/default.css b/res/default.css
index 22f4ac9..b0d6e3d 100644
--- a/res/default.css
+++ b/res/default.css
@@ -6,6 +6,7 @@
* @copyright 2011 Amiado Group AG, All rights reserved.
* @copyright 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * @copyright 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
html, body {
margin: 0;
diff --git a/setup.sh b/setup.sh
index be693f8..ae1dbb8 100755
--- a/setup.sh
+++ b/setup.sh
@@ -3,6 +3,7 @@
# Easy installation for contributing to candy
#
# Copyright 2014 Michael Weibel <michael.weibel@gmail.com>
+# Copyright 2015 Adhearsion Foundation Inc <info@adhearsion.com>
# License: MIT
#
diff --git a/src/candy.js b/src/candy.js
index 2ec7011..a6eb041 100644
--- a/src/candy.js
+++ b/src/candy.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
diff --git a/src/core.js b/src/core.js
index 2296205..f1ac386 100644
--- a/src/core.js
+++ b/src/core.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
diff --git a/src/core/action.js b/src/core/action.js
index b72a946..04d7725 100644
--- a/src/core/action.js
+++ b/src/core/action.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
diff --git a/src/core/chatRoom.js b/src/core/chatRoom.js
index 2d842bd..2068342 100644
--- a/src/core/chatRoom.js
+++ b/src/core/chatRoom.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
diff --git a/src/core/chatRoster.js b/src/core/chatRoster.js
index 777ef2f..6c53f6e 100644
--- a/src/core/chatRoster.js
+++ b/src/core/chatRoster.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
diff --git a/src/core/chatUser.js b/src/core/chatUser.js
index 5067afb..3015e09 100644
--- a/src/core/chatUser.js
+++ b/src/core/chatUser.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
diff --git a/src/core/contact.js b/src/core/contact.js
index 04c3cf5..0f56ca9 100644
--- a/src/core/contact.js
+++ b/src/core/contact.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
@@ -112,7 +113,12 @@ Candy.Core.Contact.prototype.getStatus = function() {
highestResourcePriority;
$.each(this.data.resources, function(resource, obj) {
- var resourcePriority = parseInt(obj.priority, 10);
+ var resourcePriority;
+ if (obj.priority === undefined || obj.priority === '') {
+ resourcePriority = 0;
+ } else {
+ resourcePriority = parseInt(obj.priority, 10);
+ }
if (obj.show === '' || obj.show === null || obj.show === undefined) {
// TODO: Submit this as a bugfix to strophejs-plugins' roster plugin
diff --git a/src/core/event.js b/src/core/event.js
index 48e18b0..3376be1 100644
--- a/src/core/event.js
+++ b/src/core/event.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
diff --git a/src/util.js b/src/util.js
index dfcf613..6a81f03 100644
--- a/src/util.js
+++ b/src/util.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
diff --git a/src/view.js b/src/view.js
index ade660d..0f1988d 100644
--- a/src/view.js
+++ b/src/view.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
diff --git a/src/view/observer.js b/src/view/observer.js
index a2afcbc..25c301b 100644
--- a/src/view/observer.js
+++ b/src/view/observer.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
diff --git a/src/view/pane/chat.js b/src/view/pane/chat.js
index e12665e..31d5984 100644
--- a/src/view/pane/chat.js
+++ b/src/view/pane/chat.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
diff --git a/src/view/pane/message.js b/src/view/pane/message.js
index b4bcbb6..3198835 100644
--- a/src/view/pane/message.js
+++ b/src/view/pane/message.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
diff --git a/src/view/pane/privateRoom.js b/src/view/pane/privateRoom.js
index 67ef58d..7e04005 100644
--- a/src/view/pane/privateRoom.js
+++ b/src/view/pane/privateRoom.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
diff --git a/src/view/pane/room.js b/src/view/pane/room.js
index bfb95f0..eeb2860 100644
--- a/src/view/pane/room.js
+++ b/src/view/pane/room.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
@@ -127,6 +128,7 @@ Candy.View.Pane = (function(self, $) {
var elem = $(this);
evtData = {
'roomJid': elem.attr('data-roomjid'),
+ 'type': elem.attr('data-roomtype'),
'element' : elem
};
@@ -144,6 +146,7 @@ Candy.View.Pane = (function(self, $) {
*
* Parameters:
* (String) roomJid - Room JID
+ * (String) type - Room Type
* (jQuery.Element) element - Room element
*/
$(Candy).triggerHandler('candy:view.room.after-show', evtData);
@@ -156,6 +159,7 @@ Candy.View.Pane = (function(self, $) {
*
* Parameters:
* (String) roomJid - Room JID
+ * (String) type - Room Type
* (jQuery.Element) element - Room element
*/
$(Candy).triggerHandler('candy:view.room.after-hide', evtData);
diff --git a/src/view/pane/roster.js b/src/view/pane/roster.js
index 077ae50..344f0d1 100644
--- a/src/view/pane/roster.js
+++ b/src/view/pane/roster.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
diff --git a/src/view/pane/window.js b/src/view/pane/window.js
index b6bb489..9acd8d9 100644
--- a/src/view/pane/window.js
+++ b/src/view/pane/window.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
diff --git a/src/view/template.js b/src/view/template.js
index d116709..5a30fe9 100644
--- a/src/view/template.js
+++ b/src/view/template.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
diff --git a/src/view/translation.js b/src/view/translation.js
index c346234..89f33d8 100644
--- a/src/view/translation.js
+++ b/src/view/translation.js
@@ -8,6 +8,7 @@
* Copyright:
* (c) 2011 Amiado Group AG. All rights reserved.
* (c) 2012-2014 Patrick Stadler & Michael Weibel. All rights reserved.
+ * (c) 2015 Adhearsion Foundation Inc <info@adhearsion.com>. All rights reserved.
*/
'use strict';
diff --git a/tests/candy/unit/core/contact.js b/tests/candy/unit/core/contact.js
index 2059630..2e926dc 100644
--- a/tests/candy/unit/core/contact.js
+++ b/tests/candy/unit/core/contact.js
@@ -47,6 +47,22 @@ define([
expect(contact.getGroups()).to.eql(['Friends']);
});
+ bdd.it('defaults the priority to 0 when not defined', function() {
+ contact.data.resources = {
+ 'resource1': {
+ show: 'away',
+ status: 'Hanging out',
+ priority: 0
+ },
+ 'resource2': {
+ show: 'available',
+ status: 'Not Hanging out',
+ priority: ""
+ }
+ };
+ expect(contact.getStatus()).to.eql('available');
+ });
+
bdd.describe('aggregate status', function () {
bdd.describe('when there are no online resources', function () {
bdd.it('is unavailable when there are no online resources', function () {