Permalink
Please sign in to comment.
Showing
with
31,598 additions
and 0 deletions.
- +4 −0 .gitignore
- +12 −0 .gitmodules
- +8 −0 CREDITS.md
- +7 −0 LICENSE
- +101 −0 Makefile
- +14 −0 README.md
- +4,131 −0 candy.bundle.js
- +1 −0 candy.min.js
- +4 −0 example/htaccess
- +26 −0 example/index.html
- +127 −0 libs/dateformat/dateFormat.js
- +22,445 −0 libs/libs.bundle.js
- +1 −0 libs/libs.min.js
- BIN res/audioplayer.swf
- +581 −0 res/default.css
- BIN res/img/action/autoscroll-off.png
- BIN res/img/action/autoscroll-on.png
- BIN res/img/action/ban.png
- BIN res/img/action/emoticons.png
- BIN res/img/action/ignore.png
- BIN res/img/action/kick.png
- BIN res/img/action/menu.png
- BIN res/img/action/private.png
- BIN res/img/action/settings.png
- BIN res/img/action/sound-off.png
- BIN res/img/action/sound-on.png
- BIN res/img/action/statusmessage-off.png
- BIN res/img/action/statusmessage-on.png
- BIN res/img/action/subject.png
- BIN res/img/action/unignore.png
- BIN res/img/action/usercount.png
- BIN res/img/context-arrows.gif
- BIN res/img/emoticons/Angel.png
- BIN res/img/emoticons/Angry.png
- BIN res/img/emoticons/Aww.png
- BIN res/img/emoticons/Aww_2.png
- BIN res/img/emoticons/Blushing.png
- BIN res/img/emoticons/Childish.png
- BIN res/img/emoticons/Confused.png
- BIN res/img/emoticons/Creepy.png
- BIN res/img/emoticons/Crying.png
- BIN res/img/emoticons/Cthulhu.png
- BIN res/img/emoticons/Cute.png
- BIN res/img/emoticons/Cute_Winking.png
- BIN res/img/emoticons/Devil.png
- BIN res/img/emoticons/Gah.png
- BIN res/img/emoticons/Gah_2.png
- BIN res/img/emoticons/Gasping.png
- BIN res/img/emoticons/Greedy.png
- BIN res/img/emoticons/Grinning.png
- BIN res/img/emoticons/Grinning_Winking.png
- BIN res/img/emoticons/Happy.png
- BIN res/img/emoticons/Happy_2.png
- BIN res/img/emoticons/Happy_3.png
- BIN res/img/emoticons/Heart.png
- BIN res/img/emoticons/Huh.png
- BIN res/img/emoticons/Huh_2.png
- BIN res/img/emoticons/Laughing.png
- BIN res/img/emoticons/Lips_Sealed.png
- BIN res/img/emoticons/Madness.png
- BIN res/img/emoticons/Malicious.png
- +2 −0 res/img/emoticons/README
- BIN res/img/emoticons/Sick.png
- BIN res/img/emoticons/Smiling.png
- BIN res/img/emoticons/Speechless.png
- BIN res/img/emoticons/Spiteful.png
- BIN res/img/emoticons/Stupid.png
- BIN res/img/emoticons/Sunglasses.png
- BIN res/img/emoticons/Terrified.png
- BIN res/img/emoticons/Thumb_Down.png
- BIN res/img/emoticons/Thumb_Up.png
- BIN res/img/emoticons/Tired.png
- BIN res/img/emoticons/Tongue_Out.png
- BIN res/img/emoticons/Tongue_Out_Laughing.png
- BIN res/img/emoticons/Tongue_Out_Left.png
- BIN res/img/emoticons/Tongue_Out_Up.png
- BIN res/img/emoticons/Tongue_Out_Up_Left.png
- BIN res/img/emoticons/Tongue_Out_Winking.png
- BIN res/img/emoticons/Uncertain.png
- BIN res/img/emoticons/Uncertain_2.png
- BIN res/img/emoticons/Unhappy.png
- BIN res/img/emoticons/Winking.png
- BIN res/img/favicon.png
- BIN res/img/modal-bg.png
- BIN res/img/modal-spinner.gif
- BIN res/img/overlay.png
- BIN res/img/roster/affiliation-owner.png
- BIN res/img/roster/ignore.png
- BIN res/img/roster/role-moderator.png
- BIN res/img/tab-transitions.png
- BIN res/img/tooltip-arrows.gif
- BIN res/notify.mp3
- +52 −0 src/candy.js
- +296 −0 src/core.js
- +253 −0 src/core/action.js
- +106 −0 src/core/chatRoom.js
- +63 −0 src/core/chatRoster.js
- +169 −0 src/core/chatUser.js
- +393 −0 src/core/event.js
- +481 −0 src/util.js
- +159 −0 src/view.js
- +195 −0 src/view/event.js
- +193 −0 src/view/observer.js
- +1,528 −0 src/view/pane.js
- +67 −0 src/view/template.js
- +179 −0 src/view/translation.js
@@ -0,0 +1,4 @@ | ||
+.DS_Store | ||
+._* | ||
+.ndproj | ||
+docs |
12
.gitmodules
@@ -0,0 +1,12 @@ | ||
+[submodule "libs/jquery-i18n"] | ||
+ path = libs/jquery-i18n | ||
+ url = git://github.com/recurser/jquery-i18n.git | ||
+[submodule "libs/strophejs"] | ||
+ path = libs/strophejs | ||
+ url = git@github.com:amiadogroup/strophejs.git | ||
+[submodule "libs/strophejs-plugins"] | ||
+ path = libs/strophejs-plugins | ||
+ url = git://github.com/metajack/strophejs-plugins.git | ||
+[submodule "libs/mustache.js"] | ||
+ path = libs/mustache.js | ||
+ url = git://github.com/janl/mustache.js.git |
@@ -0,0 +1,8 @@ | ||
+Credits | ||
+======= | ||
+- [famfamfam silk icons](http://www.famfamfam.com/lab/icons/silk/) is a smooth, free icon set, containing over 700 16-by-16 pixel icons. | ||
+- [Simple Smileys](http://simplesmileys.org) are beautifully simple emoticons. | ||
+- [Flash MP3 Player](http://flash-mp3-player.net/players/js) is a very simple flash audio player used by Candy for audio notifications. | ||
+- [Colin Snover](http://zetafleet.com/blog/javascript-dateparse-for-iso-8601) provides a fix for browsers not supporting latest Date.parse(). | ||
+- [Ben Cherry](http://www.adequatelygood.com/2010/3/JavaScript-Module-Pattern-In-Depth) wrote a great article about the JS module pattern. | ||
+- [Amiado Group](http://www.amiadogroup.com) allowed us to make Candy freely available for everyone! :) |
7
LICENSE
@@ -0,0 +1,7 @@ | ||
+Copyright (c) 2011 Amiado Group AG | ||
+ | ||
+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: | ||
+ | ||
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. | ||
+ | ||
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
101
Makefile
@@ -0,0 +1,101 @@ | ||
+# | ||
+# Makefile for Candy | ||
+# Candy - Chats are not dead yet | ||
+# | ||
+# Copyright: | ||
+# (c) 2011 Amiado Group AG | ||
+# | ||
+# Authors: | ||
+# - Patrick Stadler <patrick.stadler@amiadogroup.com> | ||
+# - Michael Weibel <michael.weibel@amiadogroup.com> | ||
+# | ||
+ | ||
+SHELL=/bin/bash | ||
+ | ||
+DOC_DIR = docs | ||
+NDPROJ_DIR = .ndproj | ||
+SRC_DIR = src | ||
+LIBS_DIR = libs | ||
+ | ||
+CANDY_BUNDLE = candy.bundle.js | ||
+CANDY_BUNDLE_MIN = candy.min.js | ||
+CANDY_BUNDLE_LIBRARIES = libs/libs.bundle.js | ||
+CANDY_BUNDLE_LIBRARIES_MIN = libs/libs.min.js | ||
+CANDY_FILES = $(SRC_DIR)/candy.js $(SRC_DIR)/core.js $(SRC_DIR)/view.js $(SRC_DIR)/util.js $(SRC_DIR)/core/action.js $(SRC_DIR)/core/chatRoom.js $(SRC_DIR)/core/chatRoster.js $(SRC_DIR)/core/chatUser.js $(SRC_DIR)/core/event.js $(SRC_DIR)/view/event.js $(SRC_DIR)/view/observer.js $(SRC_DIR)/view/pane.js $(SRC_DIR)/view/template.js $(SRC_DIR)/view/translation.js | ||
+CANDY_LIBS_FILES = $(LIBS_DIR)/strophejs/strophe.js $(LIBS_DIR)/strophejs-plugins/muc/strophe.muc.js $(LIBS_DIR)/mustache.js/mustache.js $(LIBS_DIR)/jquery-i18n/jquery.i18n.js $(LIBS_DIR)/dateformat/dateFormat.js | ||
+CANDY_FILES_BUNDLE = $(CANDY_FILES:.js=.bundle) | ||
+CANDY_LIBS_FILES_BUNDLE = $(CANDY_LIBS_FILES:.js=.libs-bundle) | ||
+ | ||
+all: clean-bundle bundle min | ||
+ | ||
+bundle: $(CANDY_FILES_BUNDLE) | ||
+ | ||
+%.bundle: %.js | ||
+ @@echo -n "Bundling" $< "..." | ||
+ @@cat $< >> $(CANDY_BUNDLE) | ||
+ @@echo "done" | ||
+ | ||
+min: $(CANDY_BUNDLE) | ||
+ @@echo -n "Compressing" $(CANDY_BUNDLE) "..." | ||
+ifdef YUI_COMPRESSOR | ||
+ @@java -jar $(YUI_COMPRESSOR) --type js $(CANDY_BUNDLE) -o $(CANDY_BUNDLE_MIN) --charset utf-8 | ||
+ @@echo "done ("$(CANDY_BUNDLE_MIN)")" | ||
+else | ||
+ @@echo "aborted" | ||
+ @@echo "** You can safely use the uncompressed bundle ("$(CANDY_BUNDLE)")" | ||
+ @@echo "** YUI Compressor is required to build the minified version." | ||
+ @@echo "** Please set YUI_COMPRESSOR to the path to the jar file." | ||
+endif | ||
+ | ||
+libs: $(CANDY_LIBS_FILES_BUNDLE) libs-min | ||
+ | ||
+%.libs-bundle: %.js | ||
+ @@echo -n "Bundling" $< "..." | ||
+ @@cat $< >> $(CANDY_BUNDLE_LIBRARIES) | ||
+ @@echo "done" | ||
+ | ||
+libs-min: $(CANDY_BUNDLE_LIBRARIES) | ||
+ @@echo -n "Compressing" $(CANDY_BUNDLE_LIBRARIES) "..." | ||
+ifdef YUI_COMPRESSOR | ||
+ @@java -jar $(YUI_COMPRESSOR) --type js $(CANDY_BUNDLE_LIBRARIES) -o $(CANDY_BUNDLE_LIBRARIES_MIN) --charset utf-8 | ||
+ @@echo "done ("$(CANDY_BUNDLE_LIBRARIES_MIN)")" | ||
+else | ||
+ @@echo "aborted" | ||
+ @@echo "** You can safely use the uncompressed bundle ("$(CANDY_BUNDLE_LIBRARIES)")" | ||
+ @@echo "** YUI Compressor is required to build the minified version." | ||
+ @@echo "** Please set YUI_COMPRESSOR to the path to the jar file." | ||
+endif | ||
+ | ||
+docs: | ||
+ @@echo "Building candy documentation ..." | ||
+ifdef NATURALDOCS_DIR | ||
+ @@if [ ! -d $(NDPROJ_DIR) ]; then mkdir $(NDPROJ_DIR); fi | ||
+ @@if [ ! -d $(DOC_DIR) ]; then mkdir $(DOC_DIR); fi | ||
+ @@$(NATURALDOCS_DIR)/NaturalDocs -q --exclude-source libs --exclude-source res --exclude-source candy.min.js --exclude-source candy.bundle.js -i . -o html $(DOC_DIR) -p $(NDPROJ_DIR) | ||
+ @@rm -r $(NDPROJ_DIR) | ||
+ @@echo "Documentation built." | ||
+ @@echo | ||
+else | ||
+ @@echo "aborted" | ||
+ @@echo "** NaturalDocs is required to build the documentation." | ||
+ @@echo "** Please set NATURALDOCS_DIR to the path to the NaturalDocs executable" | ||
+endif | ||
+ | ||
+clean: clean-bundle clean-libs | ||
+ | ||
+clean-bundle: | ||
+ @@echo -n "Cleaning bundles ..." | ||
+ @@rm -f $(CANDY_BUNDLE) $(CANDY_BUNDLE_MIN) | ||
+ @@echo "done" | ||
+ | ||
+clean-libs: | ||
+ @@echo -n "Cleaning library bundles ..." | ||
+ @@rm -f $(CANDY_BUNDLE_LIBRARIES) $(CANDY_BUNDLE_LIBRARIES_MIN) | ||
+ @@echo "done" | ||
+ | ||
+clean-docs: | ||
+ @@echo -n "Cleaning documentation ..." | ||
+ @@rm -rf $(NDPROJ_DIR) $(DOC_DIR) | ||
+ @@echo "done" | ||
+ | ||
+.PHONY: all docs clean libs |
14
README.md
@@ -0,0 +1,14 @@ | ||
+Candy — a JavaScript-based multi-user chat client | ||
+================================================== | ||
+ | ||
+Visit the official project page: http://amiadogroup.github.com/candy | ||
+ | ||
+Features | ||
+-------- | ||
+- Focused on real-time multi-user chatting | ||
+- Easy to configure, easy to run, easy to use | ||
+- Highly customizable | ||
+- 100% well-documented JavaScript source code | ||
+- Built for Jabber (XMPP), using famous technologies | ||
+- Used and approved in a productive environment with up to 400 concurrent users | ||
+- Works with all major web browsers including IE7 |

Oops, something went wrong.
0 comments on commit
6e6f84e