├── LICENSE ├── README.md ├── openfire-websockets ├── build │ ├── build.cmd │ ├── build.txt │ ├── build.xml │ └── classes │ │ └── com │ │ └── ifsoft │ │ └── websockets │ │ ├── BasicStreamID.class │ │ ├── WSConnection.class │ │ ├── plugin │ │ └── WebSocketsPlugin.class │ │ └── servlet │ │ ├── WebSocketsAdmin.class │ │ ├── XMPPServlet$WSocketCreator.class │ │ ├── XMPPServlet$XMPPWebSocket.class │ │ └── XMPPServlet.class ├── plugin │ ├── WEB-INF │ │ ├── lib │ │ │ ├── WebSockets.jar │ │ │ └── websockets.jar │ │ └── web.xml │ ├── changelog.html │ ├── index.html │ ├── lib │ │ ├── WebSockets.jar │ │ └── websockets.jar │ ├── ofchat-010.crx │ ├── peek │ │ ├── index.html │ │ ├── openfire-websockets.js │ │ ├── peek.css │ │ └── peek.js │ ├── plugin.xml │ ├── readme.html │ ├── sparkweb │ │ ├── chat │ │ │ ├── images │ │ │ │ ├── addcontact_16x16.png │ │ │ │ ├── basic-dialog │ │ │ │ │ ├── Thumbs.db │ │ │ │ │ ├── btn-sprite.gif │ │ │ │ │ ├── close.gif │ │ │ │ │ ├── e-handle.gif │ │ │ │ │ ├── gray │ │ │ │ │ │ ├── Thumbs.db │ │ │ │ │ │ ├── close.gif │ │ │ │ │ │ ├── dlg-bg.gif │ │ │ │ │ │ ├── e-handle.gif │ │ │ │ │ │ ├── hd-sprite.gif │ │ │ │ │ │ ├── s-handle.gif │ │ │ │ │ │ └── se-handle.gif │ │ │ │ │ ├── hd-sprite.gif │ │ │ │ │ ├── ignite │ │ │ │ │ │ ├── Thumbs.db │ │ │ │ │ │ ├── close.gif │ │ │ │ │ │ ├── e-handle.gif │ │ │ │ │ │ ├── group-bg.jpg │ │ │ │ │ │ ├── hd-sprite.gif │ │ │ │ │ │ └── s-handle.gif │ │ │ │ │ ├── s-handle.gif │ │ │ │ │ └── se-handle.gif │ │ │ │ ├── certificateimg_warning.gif │ │ │ │ ├── chat_16x16.gif │ │ │ │ ├── clear.gif │ │ │ │ ├── conference_16x16.png │ │ │ │ ├── createconf_16x16.png │ │ │ │ ├── downloads_16x16.png │ │ │ │ ├── emoticons │ │ │ │ │ ├── Thumbs.db │ │ │ │ │ ├── angry.gif │ │ │ │ │ ├── confused.gif │ │ │ │ │ ├── cool.gif │ │ │ │ │ ├── cry.gif │ │ │ │ │ ├── devil.gif │ │ │ │ │ ├── grin.gif │ │ │ │ │ ├── happy.gif │ │ │ │ │ ├── laugh.gif │ │ │ │ │ ├── love.gif │ │ │ │ │ ├── mischief.gif │ │ │ │ │ ├── sad.gif │ │ │ │ │ ├── silly.gif │ │ │ │ │ ├── smirk.gif │ │ │ │ │ └── wink.gif │ │ │ │ ├── gradient-bg.gif │ │ │ │ ├── grid │ │ │ │ │ ├── Thumbs.db │ │ │ │ │ ├── arrow-left-white.gif │ │ │ │ │ ├── arrow-right-white.gif │ │ │ │ │ ├── done.gif │ │ │ │ │ ├── drop-no.gif │ │ │ │ │ ├── drop-yes.gif │ │ │ │ │ ├── footer-bg.gif │ │ │ │ │ ├── grid-blue-hd.gif │ │ │ │ │ ├── grid-blue-split.gif │ │ │ │ │ ├── grid-loading.gif │ │ │ │ │ ├── grid-split.gif │ │ │ │ │ ├── grid-vista-hd.gif │ │ │ │ │ ├── invalid_line.gif │ │ │ │ │ ├── loading.gif │ │ │ │ │ ├── mso-hd.gif │ │ │ │ │ ├── nowait.gif │ │ │ │ │ ├── page-first-disabled.gif │ │ │ │ │ ├── page-first.gif │ │ │ │ │ ├── page-last-disabled.gif │ │ │ │ │ ├── page-last.gif │ │ │ │ │ ├── page-next-disabled.gif │ │ │ │ │ ├── page-next.gif │ │ │ │ │ ├── page-prev-disabled.gif │ │ │ │ │ ├── page-prev.gif │ │ │ │ │ ├── pick-button.gif │ │ │ │ │ ├── refresh.gif │ │ │ │ │ ├── sort_asc.gif │ │ │ │ │ ├── sort_desc.gif │ │ │ │ │ └── wait.gif │ │ │ │ ├── group-bg.png │ │ │ │ ├── home.gif │ │ │ │ ├── icon_warning.gif │ │ │ │ ├── im_available.png │ │ │ │ ├── im_available_stale.png │ │ │ │ ├── im_away.png │ │ │ │ ├── im_away_stale.png │ │ │ │ ├── im_dnd.png │ │ │ │ ├── im_dnd_stale.png │ │ │ │ ├── im_free_chat.png │ │ │ │ ├── im_free_chat_stale.png │ │ │ │ ├── im_onphone.png │ │ │ │ ├── im_onroad.png │ │ │ │ ├── im_pending.png │ │ │ │ ├── im_unavailable.png │ │ │ │ ├── im_unavailable_stale.png │ │ │ │ ├── info_icon.png │ │ │ │ ├── jive-avatar-22x22_bg.gif │ │ │ │ ├── layout │ │ │ │ │ ├── Thumbs.db │ │ │ │ │ ├── collapse.gif │ │ │ │ │ ├── expand.gif │ │ │ │ │ ├── gradient-bg.gif │ │ │ │ │ ├── gray │ │ │ │ │ │ ├── Thumbs.db │ │ │ │ │ │ ├── collapse.gif │ │ │ │ │ │ ├── expand.gif │ │ │ │ │ │ ├── gradient-bg.gif │ │ │ │ │ │ ├── ns-collapse.gif │ │ │ │ │ │ ├── ns-expand.gif │ │ │ │ │ │ ├── panel-close.gif │ │ │ │ │ │ ├── panel-title-bg.gif │ │ │ │ │ │ ├── panel-title-light-bg.gif │ │ │ │ │ │ ├── screenshot.gif │ │ │ │ │ │ ├── tab-close-on.gif │ │ │ │ │ │ └── tab-close.gif │ │ │ │ │ ├── ns-collapse.gif │ │ │ │ │ ├── ns-expand.gif │ │ │ │ │ ├── panel-close.gif │ │ │ │ │ ├── panel-title-bg.gif │ │ │ │ │ ├── panel-title-light-bg.gif │ │ │ │ │ ├── tab-close-on.gif │ │ │ │ │ └── tab-close.gif │ │ │ │ ├── login │ │ │ │ │ ├── Thumbs.db │ │ │ │ │ ├── anim-loading.gif │ │ │ │ │ ├── avatar.gif │ │ │ │ │ ├── backgrounds │ │ │ │ │ │ ├── Thumbs.db │ │ │ │ │ │ ├── bg_Flower.png │ │ │ │ │ │ ├── bg_Footer.png │ │ │ │ │ │ ├── bg_Login-Bottom.png │ │ │ │ │ │ ├── bg_LoginBody.png │ │ │ │ │ │ ├── bg_LoginTop-Button.png │ │ │ │ │ │ ├── bg_LoginTop-NoButton.png │ │ │ │ │ │ ├── bg_Spark.png │ │ │ │ │ │ └── bg_body.gif │ │ │ │ │ ├── buttons │ │ │ │ │ │ ├── Thumbs.db │ │ │ │ │ │ ├── btn_CreateAccount-Active.png │ │ │ │ │ │ ├── btn_CreateAccount-Depressed.png │ │ │ │ │ │ ├── btn_CreateAccount-Hover.png │ │ │ │ │ │ ├── btn_CreateAccount.png │ │ │ │ │ │ ├── btn_Large.gif │ │ │ │ │ │ ├── btn_Large.png │ │ │ │ │ │ ├── btn_Login-Active.png │ │ │ │ │ │ ├── btn_Login-Depressed.png │ │ │ │ │ │ ├── btn_Login-Hover.png │ │ │ │ │ │ ├── btn_Login.png │ │ │ │ │ │ ├── btn_Small.gif │ │ │ │ │ │ └── btn_Small.png │ │ │ │ │ ├── icons │ │ │ │ │ │ ├── Thumbs.db │ │ │ │ │ │ └── warning.png │ │ │ │ │ ├── logo_SparkWeb-large.gif │ │ │ │ │ ├── logo_SparkWeb-small.gif │ │ │ │ │ └── logo_SparkWebvX.gif │ │ │ │ ├── login_background.png │ │ │ │ ├── menutri.gif │ │ │ │ ├── message_edit.png │ │ │ │ ├── metallic_down.png │ │ │ │ ├── metallic_up.png │ │ │ │ ├── office.gif │ │ │ │ ├── progress.gif │ │ │ │ ├── s.gif │ │ │ │ ├── screen.gif │ │ │ │ ├── sizer │ │ │ │ │ ├── Thumbs.db │ │ │ │ │ ├── e-handle-dark.gif │ │ │ │ │ ├── e-handle.gif │ │ │ │ │ ├── gray │ │ │ │ │ │ ├── e-handle-dark.gif │ │ │ │ │ │ ├── e-handle.gif │ │ │ │ │ │ ├── s-handle-dark.gif │ │ │ │ │ │ ├── s-handle.gif │ │ │ │ │ │ ├── se-handle-dark.gif │ │ │ │ │ │ └── se-handle.gif │ │ │ │ │ ├── s-handle-dark.gif │ │ │ │ │ ├── s-handle.gif │ │ │ │ │ ├── se-handle-dark.gif │ │ │ │ │ └── se-handle.gif │ │ │ │ ├── spark_logo.png │ │ │ │ ├── sparkbg.gif │ │ │ │ ├── sparkweb-avatar.png │ │ │ │ ├── sparkweb-black │ │ │ │ │ ├── Thumbs.db │ │ │ │ │ ├── bg-roster-userhighlight.gif │ │ │ │ │ ├── bg_grouplabel.gif │ │ │ │ │ ├── bg_titlebar.gif │ │ │ │ │ ├── bg_titlebar.png │ │ │ │ │ ├── bg_titlebar_ie.gif │ │ │ │ │ ├── bg_titlebar_left.png │ │ │ │ │ ├── bg_titlebar_right.png │ │ │ │ │ ├── bg_usercontrols.gif │ │ │ │ │ ├── close-sprite.gif │ │ │ │ │ ├── handle-e.gif │ │ │ │ │ ├── handle-s.gif │ │ │ │ │ ├── handle-se.gif │ │ │ │ │ ├── icon-addcontact.png │ │ │ │ │ ├── icon-arrow-dwn.gif │ │ │ │ │ ├── icon-arrow-rght.gif │ │ │ │ │ ├── icon-groupchat.gif │ │ │ │ │ ├── icon-groupchat.png │ │ │ │ │ ├── icon-split-h.gif │ │ │ │ │ ├── icon-split-v.gif │ │ │ │ │ ├── icon-startchat.png │ │ │ │ │ ├── icon-tinyarrow-dwn.gif │ │ │ │ │ ├── tab-btm-inactive-left-bg.gif │ │ │ │ │ ├── tab-btm-inactive-right-bg.gif │ │ │ │ │ ├── tab-btm-left-bg.gif │ │ │ │ │ ├── tab-btm-right-bg.gif │ │ │ │ │ └── tab-close.gif │ │ │ │ ├── tabs │ │ │ │ │ ├── Thumbs.db │ │ │ │ │ ├── gray │ │ │ │ │ │ ├── tab-btm-inactive-left-bg.gif │ │ │ │ │ │ ├── tab-btm-inactive-right-bg.gif │ │ │ │ │ │ ├── tab-btm-left-bg.gif │ │ │ │ │ │ ├── tab-btm-right-bg.gif │ │ │ │ │ │ └── tab-sprite.gif │ │ │ │ │ ├── tab-btm-inactive-left-bg.gif │ │ │ │ │ ├── tab-btm-inactive-right-bg.gif │ │ │ │ │ ├── tab-btm-left-bg.gif │ │ │ │ │ ├── tab-btm-right-bg.gif │ │ │ │ │ └── tab-sprite.gif │ │ │ │ └── vm.gif │ │ │ ├── javascript │ │ │ │ ├── spank.js │ │ │ │ ├── sparkweb.js │ │ │ │ ├── thirdparty.js │ │ │ │ ├── xmpp-bosh.js │ │ │ │ ├── xmpp-ws.js │ │ │ │ └── yui.js │ │ │ ├── style │ │ │ │ ├── basic-dialog.css │ │ │ │ ├── grid.css │ │ │ │ ├── layout.css │ │ │ │ ├── load.xml │ │ │ │ ├── login.css │ │ │ │ ├── menu.css │ │ │ │ ├── resizable.css │ │ │ │ ├── spank.css │ │ │ │ ├── tabs.css │ │ │ │ └── toolbar.css │ │ │ └── vcard.html │ │ ├── index.html │ │ ├── site.manifest │ │ └── spank.html │ └── web │ │ ├── WEB-INF │ │ └── web.xml │ │ └── images │ │ ├── add-16x16.gif │ │ ├── available.png │ │ ├── delete-16x16.gif │ │ ├── edit-16x16.gif │ │ ├── icon_calendarpicker.gif │ │ ├── icon_help_14x14.gif │ │ ├── refresh-16x16.gif │ │ ├── success-16x16.gif │ │ └── unavailable.png └── src │ ├── com │ └── ifsoft │ │ └── websockets │ │ ├── BasicStreamID.java │ │ ├── WSConnection.java │ │ ├── plugin │ │ └── WebSocketsPlugin.java │ │ └── servlet │ │ ├── WebSocketsAdmin.java │ │ └── XMPPServlet.java │ └── ofchat │ ├── 1.gif │ ├── css │ ├── boxy.css │ ├── left.css │ ├── right.css │ └── style.css │ ├── html │ ├── background.html │ ├── guide.html │ ├── notification.html │ ├── updated.html │ └── vcard.html │ ├── icon.gif │ ├── icon.png │ ├── icon128.gif │ ├── icon16.gif │ ├── icon48.gif │ ├── icon_disabled.png │ ├── icon_enabled.png │ ├── images │ ├── emoticons │ │ ├── angry.gif │ │ ├── blush.gif │ │ ├── confused.gif │ │ ├── cool.gif │ │ ├── cry.gif │ │ ├── grin.gif │ │ ├── happy.gif │ │ ├── laugh.gif │ │ ├── love.gif │ │ ├── mischief.gif │ │ ├── plain.gif │ │ ├── sad.gif │ │ ├── shocked.gif │ │ ├── silly.gif │ │ └── wink.gif │ ├── gateways │ │ ├── aim.gif │ │ ├── facebook.png │ │ ├── gtalk.gif │ │ ├── msn.gif │ │ ├── twitter.gif │ │ ├── xmpp.png │ │ └── yahoo.gif │ └── media │ │ ├── camera.gif │ │ ├── camera.jpg │ │ └── mic.jpg │ ├── js │ ├── background │ │ ├── boss.js │ │ ├── jquery.2regex.js │ │ ├── jquery.md5.js │ │ ├── secretary.js │ │ └── state.js │ ├── gtalklet.js │ ├── injection │ │ ├── left.js │ │ └── right.js │ ├── jquery.boxy.js │ ├── jquery.js │ ├── sdptojingle.js │ ├── strophejs │ │ ├── CHANGELOG.txt │ │ ├── LICENSE.txt │ │ ├── README.txt │ │ ├── plugins │ │ │ ├── mixin.support.js │ │ │ ├── plugin.0030.js │ │ │ ├── plugin.cm.js │ │ │ ├── plugin.muc.js │ │ │ ├── plugin.roster.js │ │ │ └── strophe.flxhr.js │ │ ├── src │ │ │ ├── base64.js │ │ │ ├── core.js │ │ │ ├── md5.js │ │ │ └── strophe-openfire.js │ │ └── strophe.js │ └── tab │ │ ├── assistant.js │ │ ├── autolink.js │ │ ├── autoresize.js │ │ ├── follower.js │ │ ├── jingle.js │ │ ├── jquery.blockUI.js │ │ ├── jquery.scrollTo.js │ │ ├── jquery.scrollbarWidth.js │ │ ├── jquery.switchToClass.js │ │ └── micro-templating.js │ ├── manifest.json │ ├── notification.gif │ ├── options │ ├── fancy-settings │ │ ├── CHANGELOG.md │ │ ├── LICENSE.txt │ │ ├── README.md │ │ ├── resources │ │ │ └── icon.drawit │ │ │ │ ├── Data │ │ │ │ ├── Info.plist │ │ │ │ └── QuickLook │ │ │ │ ├── Preview.jpg │ │ │ │ └── Thumbnail.jpg │ │ └── source │ │ │ ├── css │ │ │ ├── main.css │ │ │ └── setting.css │ │ │ ├── custom.css │ │ │ ├── i18n.js │ │ │ ├── icon.png │ │ │ ├── index.html │ │ │ ├── js │ │ │ ├── classes │ │ │ │ ├── fancy-settings.js │ │ │ │ ├── search.js │ │ │ │ ├── setting.js │ │ │ │ └── tab.js │ │ │ └── i18n.js │ │ │ ├── lib │ │ │ ├── default.css │ │ │ ├── mootools-core.js │ │ │ └── store.js │ │ │ ├── manifest.js │ │ │ └── settings.js │ ├── i18n.js │ ├── icon.gif │ ├── icon.png │ ├── index.html │ ├── manifest.js │ └── settings.js │ └── popup.html ├── strophe-openfire-websocket.js └── websockets.war /README.md: -------------------------------------------------------------------------------- 1 | # strophe-openfire-websocket 2 | Use strophe to connect nginx or haproxy websocket proxy 3 | 4 | Recommand using haproxy as websocket proxy because "Connection reset by peer" happens in nginx and then connection become unavailiable, especially lots of concurrent connections or large data transfer 5 | 6 | Especially thanks to Dele Olajide for developing the project (https://code.google.com/p/openfire-websockets/) 7 | 8 | ## Installation 9 | ####Server Side (openfire): 10 | * If you use Openfire 3.10, download websockets.war (I rebuild the plugin source within openfire 3.10 source) here and put it to your openfire plugin directory 11 | * If you use Openfire 3.9.3, download websocket plugin (websockets-0.0.0.6.zip, https://code.google.com/p/openfire-websockets/downloads/list) and unzip file to your openfire plugin directory 12 | * Restart openfire server (When you use websockets.war, you have to check whether websocket.jar and Websocket.jar coexist in plugin directory. If it happens, delete Websocket.jar and restart openfire to ensure openfire load correct jar) 13 | * Visit openfire admin site and select the tab "Server" and you should see the child tab "WebSockets" and the default "Web Application Name" is ws 14 | 15 | ####Server Side (nginx): 16 | Note: if you want to connect openfire directly, just skip this step 17 | ``` 18 | location /xmpp-websocket { 19 | proxy_pass http://yourOpenfireServer:7070/ws/server; 20 | proxy_http_version 1.1; 21 | proxy_set_header Upgrade $http_upgrade; 22 | proxy_set_header Connection "upgrade"; 23 | proxy_set_header Host $host; 24 | tcp_nodelay on; 25 | } 26 | ``` 27 | 28 | ####Server Side (haproxy): 29 | Note: if you want to connect openfire directly, just skip this step 30 | ``` 31 | global 32 | nbproc 2 33 | daemon 34 | maxconn 4096 35 | 36 | defaults 37 | mode http 38 | timeout connect 5s 39 | timeout queue 5s 40 | timeout server 30s 41 | timeout client 5s 42 | timeout tunnel 1h 43 | 44 | frontend wss 45 | bind *:44443 ssl crt yourcrtfile_location 46 | timeout client 1h 47 | default_backend ws_backend 48 | 49 | backend ws_backend 50 | balance source 51 | option forwardfor # This sets X-Forwarded-For 52 | timeout queue 86400000 53 | timeout server 86400000 54 | timeout connect 86400000 55 | 56 | server ws1 54.223.130.159:7070 weight 1 maxconn 4096 check inter 10000 57 | 58 | listen stats 59 | bind :55688 ssl crt yourcrtfile_location 60 | mode http 61 | stats enable 62 | stats hide-version 63 | stats realm Haproxy\ Statistics 64 | stats uri / 65 | stats auth admin:adminPassword 66 | stats refresh 10s 67 | ``` 68 | 69 | ####Client Side (to nginx websocket proxy (openfire)): 70 | * Checkout strophe-openfire-websocket.js and include strophe-openfire-websocket.js to your html 71 | * Add the code below to your js 72 | ```html 73 | var arrURL = document.URL.split('/'), 74 | protocol = (arrURL[0] === 'http:' ? 'ws://' : 'wss://'), 75 | wsUrl = protocol + arrURL[2] + '/xmpp-websocket'; 76 | 77 | var conn = new Openfire.Connection(wsUrl); 78 | ``` 79 | 80 | ####Client Side (to haproxy websocket proxy (openfire)): 81 | * Checkout strophe-openfire-websocket.js and include strophe-openfire-websocket.js to your html 82 | * Add the code below to your js 83 | ```html 84 | var conn = new Openfire.Connection('wss://yourHaproxyServer:44443/ws/server'); 85 | ``` 86 | 87 | ####Client Side (to openfire directly): 88 | * Checkout strophe-openfire-websocket.js and include strophe-openfire-websocket.js to your html 89 | * Add the code below to your js 90 | ```html 91 | var conn = new Openfire.Connection("ws://yourOpenfireServer:7070/ws/server"); 92 | ``` 93 | -------------------------------------------------------------------------------- /openfire-websockets/build/build.cmd: -------------------------------------------------------------------------------- 1 | call ant war >build.txt 2 | 3 | rd "C:\Program Files\Openfire\plugins\websockets" /q /s 4 | del "C:\Program Files\Openfire\plugins\websockets.war" 5 | copy "C:\Work\Projects\2010.04.21-iTrader\Workspace\openfire_3_10_0\target\openfire\plugins\websockets.war" "C:\Program Files\Openfire\plugins" 6 | 7 | del "C:\Program Files\Openfire\logs\*.*" 8 | 9 | pause -------------------------------------------------------------------------------- /openfire-websockets/build/build.txt: -------------------------------------------------------------------------------- 1 | Buildfile: C:\Projects\websockets\build\build.xml 2 | 3 | clean: 4 | [delete] Deleting directory C:\Projects\websockets\build\classes\com 5 | 6 | init: 7 | 8 | compile: 9 | [javac] C:\Projects\websockets\build\build.xml:26: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds 10 | [javac] Compiling 5 source files to C:\Projects\websockets\build\classes 11 | 12 | jar: 13 | [jar] Building jar: C:\Projects\websockets\plugin\lib\websockets.jar 14 | [jar] Building jar: C:\Projects\websockets\plugin\WEB-INF\lib\websockets.jar 15 | 16 | war: 17 | [jar] Building jar: C:\Work\Projects\2010.04.21-iTrader\Workspace\openfire_3_10_0\target\openfire\plugins\websockets.war 18 | 19 | BUILD SUCCESSFUL 20 | Total time: 1 second 21 | -------------------------------------------------------------------------------- /openfire-websockets/build/build.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | WebSockets Plugin Build 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /openfire-websockets/build/classes/com/ifsoft/websockets/BasicStreamID.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/build/classes/com/ifsoft/websockets/BasicStreamID.class -------------------------------------------------------------------------------- /openfire-websockets/build/classes/com/ifsoft/websockets/WSConnection.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/build/classes/com/ifsoft/websockets/WSConnection.class -------------------------------------------------------------------------------- /openfire-websockets/build/classes/com/ifsoft/websockets/plugin/WebSocketsPlugin.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/build/classes/com/ifsoft/websockets/plugin/WebSocketsPlugin.class -------------------------------------------------------------------------------- /openfire-websockets/build/classes/com/ifsoft/websockets/servlet/WebSocketsAdmin.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/build/classes/com/ifsoft/websockets/servlet/WebSocketsAdmin.class -------------------------------------------------------------------------------- /openfire-websockets/build/classes/com/ifsoft/websockets/servlet/XMPPServlet$WSocketCreator.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/build/classes/com/ifsoft/websockets/servlet/XMPPServlet$WSocketCreator.class -------------------------------------------------------------------------------- /openfire-websockets/build/classes/com/ifsoft/websockets/servlet/XMPPServlet$XMPPWebSocket.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/build/classes/com/ifsoft/websockets/servlet/XMPPServlet$XMPPWebSocket.class -------------------------------------------------------------------------------- /openfire-websockets/build/classes/com/ifsoft/websockets/servlet/XMPPServlet.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/build/classes/com/ifsoft/websockets/servlet/XMPPServlet.class -------------------------------------------------------------------------------- /openfire-websockets/plugin/WEB-INF/lib/WebSockets.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/WEB-INF/lib/WebSockets.jar -------------------------------------------------------------------------------- /openfire-websockets/plugin/WEB-INF/lib/websockets.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/WEB-INF/lib/websockets.jar -------------------------------------------------------------------------------- /openfire-websockets/plugin/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | WebSockets 5 | WebSockets for Openlink 6 | 7 | 8 | index.html 9 | 10 | 11 | -------------------------------------------------------------------------------- /openfire-websockets/plugin/changelog.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | WebSockets Changelog 6 | 40 | 41 | 42 | 43 |

44 |

45 | 46 |

0.0.0.10

47 | 51 | 52 |

0.0.0.09

53 | 54 | 58 | 59 |

0.0.0.08 -- June 1st 2014

60 | 61 |
    62 |
  • Upgraded to Jetty 9.1.5
  • 63 |
0.0.0.07 -- May 9th 2013

66 | 67 |
    68 |
  • Fixed fault with server-side sign-on
  • 69 |
0.0.0.06 -- May 6th 2013

72 | 73 |
    74 |
  • Added support for server-side sign on (no password from client)
  • 75 |
0.0.0.05 -- April 23rdth 2013

78 | 79 |
    80 |
  • Added support for registration of new users
  • 81 |
0.0.0.04 -- Nov 23rdth 2012

84 | 85 |
    86 |
  • OfChat version 0.10 with support for RTCPeerConnection in webrtc audio/video
  • 87 |
  • Added support for Anonoymous XMPP connections to WebSockets
  • 88 |
0.0.0.03 -- Sept 5th 2012

91 | 92 |
    93 |
  • Site manifest file to support caching for Websockets version of SparkWeb (Ajax)
  • 94 |
  • OfChat version 0.9 with support for webrtc audio/video
  • 95 |
0.0.0.02 -- July 22nd 2012

98 | 99 |
    100 |
  • Improved version with contribution from Ignite Realtime Community
  • 101 |
0.0.0.01 -- September 12th 2011

104 | 105 |
    106 |
  • Initial Version
  • 107 |
110 | 111 | -------------------------------------------------------------------------------- /openfire-websockets/plugin/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Jitsi Videobridge - Forbidden 7 | 8 | 9 | 10 |

Forbidden

11 |

This is a private folder

12 | 13 | 14 | -------------------------------------------------------------------------------- /openfire-websockets/plugin/lib/WebSockets.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/lib/WebSockets.jar -------------------------------------------------------------------------------- /openfire-websockets/plugin/lib/websockets.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/lib/websockets.jar -------------------------------------------------------------------------------- /openfire-websockets/plugin/ofchat-010.crx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/ofchat-010.crx -------------------------------------------------------------------------------- /openfire-websockets/plugin/peek/index.html: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | Peek - Chapter 4 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 |

Peek

19 | 20 |
21 | 23 | 24 |
25 | 27 | 29 |
30 | 31 | 32 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /openfire-websockets/plugin/peek/peek.css: -------------------------------------------------------------------------------- 1 | body { 2 | font-family: Helvetica; 3 | } 4 | 5 | h1 { 6 | text-align: center; 7 | } 8 | 9 | #console { 10 | padding: 10px; 11 | height: 300px; 12 | border: solid 1px #aaa; 13 | 14 | background-color: #000; 15 | color: #eee; 16 | font-family: monospace; 17 | 18 | overflow: auto; 19 | } 20 | 21 | #input { 22 | width: 100%; 23 | height: 100px; 24 | font-family: monospace; 25 | } 26 | 27 | .incoming { 28 | background-color: #111; 29 | } 30 | 31 | textarea.disabled { 32 | background-color: #bbb; 33 | } 34 | 35 | #buttonbar { 36 | margin: 10px; 37 | } 38 | 39 | #disconnect_button { 40 | float: left; 41 | width: 100px; 42 | } 43 | 44 | #send_button { 45 | float: right; 46 | width: 100px; 47 | } 48 | 49 | /* xml styles */ 50 | .xml_punc { color: #888; } 51 | .xml_tag { color: #e77; } 52 | .xml_aname { color: #55d; } 53 | .xml_avalue { color: #77f; } 54 | .xml_text { color: #aaa } 55 | .xml_level0 { padding-left: 0; } 56 | .xml_level1 { padding-left: 1em; } 57 | .xml_level2 { padding-left: 2em; } 58 | .xml_level3 { padding-left: 3em; } 59 | .xml_level4 { padding-left: 4em; } 60 | .xml_level5 { padding-left: 5em; } 61 | .xml_level6 { padding-left: 6em; } 62 | .xml_level7 { padding-left: 7em; } 63 | .xml_level8 { padding-left: 8em; } 64 | .xml_level9 { padding-left: 9em; } 65 | -------------------------------------------------------------------------------- /openfire-websockets/plugin/plugin.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | com.ifsoft.websockets.plugin.WebSocketsPlugin 5 | WebSockets Plugin 6 | WebSockets Plugin for Openfire 7 | Ignite Realtime Community (customize) 8 | 0.0.0.10 9 | 3.10.0 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /openfire-websockets/plugin/readme.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | WebSockets Plugin Readme 6 | 67 | 68 | 69 | 70 | 71 |

72 | WebSockets Plugin Readme 73 |

74 | 75 |

Prerequesites

76 | 77 |

78 | 79 |

80 | 81 |

Installation

82 | 83 |
    84 |
  1. Stop Openfire.
  2. 85 |
  3. Copy the websockets.war file to the OPENFIRE_HOME/plugins directory.
  4. 86 |
  5. Restart Openfire.
  6. 87 |
  7. From a browser, go to http://your_openfire-server:7070/websockets/sparkweb
  8. 88 |
  9. From a browser, go to http://your_openfire-server:7070/websockets/peek
  10. 89 |
  11. From a browser, go to http://your_openfire-server:7070/websockets/ofchat-010.crx
  12. 90 |
  13. If these pages do not appear, please check you log files and post any errors on www.igniterealtime.org
  14. 91 |
92 | 93 |

Configuration

94 | 95 |
    96 |
  • Go to the admin properties page
  • 97 |
98 | 99 | 100 | 101 | -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/addcontact_16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/addcontact_16x16.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/Thumbs.db -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/btn-sprite.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/btn-sprite.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/close.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/close.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/e-handle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/e-handle.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/gray/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/gray/Thumbs.db -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/gray/close.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/gray/close.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/gray/dlg-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/gray/dlg-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/gray/e-handle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/gray/e-handle.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/gray/hd-sprite.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/gray/hd-sprite.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/gray/s-handle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/gray/s-handle.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/gray/se-handle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/gray/se-handle.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/hd-sprite.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/hd-sprite.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/ignite/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/ignite/Thumbs.db -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/ignite/close.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/ignite/close.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/ignite/e-handle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/ignite/e-handle.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/ignite/group-bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/ignite/group-bg.jpg -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/ignite/hd-sprite.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/ignite/hd-sprite.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/ignite/s-handle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/ignite/s-handle.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/s-handle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/s-handle.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/se-handle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/basic-dialog/se-handle.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/certificateimg_warning.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/certificateimg_warning.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/chat_16x16.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/chat_16x16.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/clear.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/clear.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/conference_16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/conference_16x16.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/createconf_16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/createconf_16x16.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/downloads_16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/downloads_16x16.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/emoticons/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/emoticons/Thumbs.db -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/emoticons/angry.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/emoticons/angry.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/emoticons/confused.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/emoticons/confused.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/emoticons/cool.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/emoticons/cool.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/emoticons/cry.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/emoticons/cry.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/emoticons/devil.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/emoticons/devil.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/emoticons/grin.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/emoticons/grin.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/emoticons/happy.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/emoticons/happy.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/emoticons/laugh.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/emoticons/laugh.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/emoticons/love.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/emoticons/love.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/emoticons/mischief.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/emoticons/mischief.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/emoticons/sad.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/emoticons/sad.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/emoticons/silly.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/emoticons/silly.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/emoticons/smirk.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/emoticons/smirk.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/emoticons/wink.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/emoticons/wink.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/gradient-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/gradient-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/Thumbs.db -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/arrow-left-white.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/arrow-left-white.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/arrow-right-white.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/arrow-right-white.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/done.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/done.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/drop-no.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/drop-no.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/drop-yes.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/drop-yes.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/footer-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/footer-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/grid-blue-hd.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/grid-blue-hd.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/grid-blue-split.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/grid-blue-split.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/grid-loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/grid-loading.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/grid-split.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/grid-split.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/grid-vista-hd.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/grid-vista-hd.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/invalid_line.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/invalid_line.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/loading.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/mso-hd.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/mso-hd.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/nowait.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/nowait.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/page-first-disabled.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/page-first-disabled.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/page-first.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/page-first.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/page-last-disabled.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/page-last-disabled.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/page-last.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/page-last.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/page-next-disabled.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/page-next-disabled.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/page-next.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/page-next.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/page-prev-disabled.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/page-prev-disabled.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/page-prev.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/page-prev.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/pick-button.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/pick-button.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/refresh.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/refresh.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/sort_asc.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/sort_asc.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/sort_desc.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/sort_desc.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/grid/wait.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/grid/wait.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/group-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/group-bg.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/home.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/home.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/icon_warning.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/icon_warning.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/im_available.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/im_available.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/im_available_stale.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/im_available_stale.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/im_away.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/im_away.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/im_away_stale.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/im_away_stale.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/im_dnd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/im_dnd.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/im_dnd_stale.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/im_dnd_stale.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/im_free_chat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/im_free_chat.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/im_free_chat_stale.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/im_free_chat_stale.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/im_onphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/im_onphone.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/im_onroad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/im_onroad.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/im_pending.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/im_pending.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/im_unavailable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/im_unavailable.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/im_unavailable_stale.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/im_unavailable_stale.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/info_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/info_icon.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/jive-avatar-22x22_bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/jive-avatar-22x22_bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/Thumbs.db -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/collapse.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/collapse.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/expand.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/expand.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/gradient-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/gradient-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/gray/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/gray/Thumbs.db -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/gray/collapse.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/gray/collapse.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/gray/expand.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/gray/expand.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/gray/gradient-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/gray/gradient-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/gray/ns-collapse.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/gray/ns-collapse.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/gray/ns-expand.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/gray/ns-expand.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/gray/panel-close.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/gray/panel-close.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/gray/panel-title-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/gray/panel-title-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/gray/panel-title-light-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/gray/panel-title-light-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/gray/screenshot.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/gray/screenshot.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/gray/tab-close-on.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/gray/tab-close-on.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/gray/tab-close.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/gray/tab-close.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/ns-collapse.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/ns-collapse.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/ns-expand.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/ns-expand.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/panel-close.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/panel-close.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/panel-title-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/panel-title-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/panel-title-light-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/panel-title-light-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/tab-close-on.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/tab-close-on.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/layout/tab-close.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/layout/tab-close.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/Thumbs.db -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/anim-loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/anim-loading.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/avatar.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/avatar.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/Thumbs.db -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/bg_Flower.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/bg_Flower.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/bg_Footer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/bg_Footer.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/bg_Login-Bottom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/bg_Login-Bottom.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/bg_LoginBody.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/bg_LoginBody.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/bg_LoginTop-Button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/bg_LoginTop-Button.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/bg_LoginTop-NoButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/bg_LoginTop-NoButton.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/bg_Spark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/bg_Spark.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/bg_body.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/backgrounds/bg_body.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/buttons/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/buttons/Thumbs.db -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_CreateAccount-Active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_CreateAccount-Active.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_CreateAccount-Depressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_CreateAccount-Depressed.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_CreateAccount-Hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_CreateAccount-Hover.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_CreateAccount.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_CreateAccount.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_Large.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_Large.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_Large.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_Large.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_Login-Active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_Login-Active.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_Login-Depressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_Login-Depressed.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_Login-Hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_Login-Hover.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_Login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_Login.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_Small.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_Small.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_Small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/buttons/btn_Small.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/icons/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/icons/Thumbs.db -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/icons/warning.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/icons/warning.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/logo_SparkWeb-large.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/logo_SparkWeb-large.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/logo_SparkWeb-small.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/logo_SparkWeb-small.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login/logo_SparkWebvX.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login/logo_SparkWebvX.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/login_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/login_background.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/menutri.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/menutri.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/message_edit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/message_edit.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/metallic_down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/metallic_down.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/metallic_up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/metallic_up.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/office.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/office.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/progress.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/progress.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/s.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/s.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/screen.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/screen.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sizer/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sizer/Thumbs.db -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sizer/e-handle-dark.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sizer/e-handle-dark.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sizer/e-handle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sizer/e-handle.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sizer/gray/e-handle-dark.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sizer/gray/e-handle-dark.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sizer/gray/e-handle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sizer/gray/e-handle.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sizer/gray/s-handle-dark.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sizer/gray/s-handle-dark.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sizer/gray/s-handle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sizer/gray/s-handle.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sizer/gray/se-handle-dark.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sizer/gray/se-handle-dark.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sizer/gray/se-handle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sizer/gray/se-handle.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sizer/s-handle-dark.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sizer/s-handle-dark.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sizer/s-handle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sizer/s-handle.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sizer/se-handle-dark.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sizer/se-handle-dark.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sizer/se-handle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sizer/se-handle.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/spark_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/spark_logo.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkbg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkbg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-avatar.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/Thumbs.db -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/bg-roster-userhighlight.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/bg-roster-userhighlight.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/bg_grouplabel.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/bg_grouplabel.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/bg_titlebar.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/bg_titlebar.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/bg_titlebar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/bg_titlebar.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/bg_titlebar_ie.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/bg_titlebar_ie.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/bg_titlebar_left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/bg_titlebar_left.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/bg_titlebar_right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/bg_titlebar_right.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/bg_usercontrols.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/bg_usercontrols.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/close-sprite.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/close-sprite.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/handle-e.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/handle-e.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/handle-s.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/handle-s.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/handle-se.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/handle-se.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-addcontact.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-addcontact.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-arrow-dwn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-arrow-dwn.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-arrow-rght.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-arrow-rght.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-groupchat.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-groupchat.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-groupchat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-groupchat.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-split-h.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-split-h.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-split-v.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-split-v.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-startchat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-startchat.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-tinyarrow-dwn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/icon-tinyarrow-dwn.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/tab-btm-inactive-left-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/tab-btm-inactive-left-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/tab-btm-inactive-right-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/tab-btm-inactive-right-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/tab-btm-left-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/tab-btm-left-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/tab-btm-right-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/tab-btm-right-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/tab-close.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/sparkweb-black/tab-close.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/tabs/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/tabs/Thumbs.db -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/tabs/gray/tab-btm-inactive-left-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/tabs/gray/tab-btm-inactive-left-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/tabs/gray/tab-btm-inactive-right-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/tabs/gray/tab-btm-inactive-right-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/tabs/gray/tab-btm-left-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/tabs/gray/tab-btm-left-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/tabs/gray/tab-btm-right-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/tabs/gray/tab-btm-right-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/tabs/gray/tab-sprite.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/tabs/gray/tab-sprite.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/tabs/tab-btm-inactive-left-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/tabs/tab-btm-inactive-left-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/tabs/tab-btm-inactive-right-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/tabs/tab-btm-inactive-right-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/tabs/tab-btm-left-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/tabs/tab-btm-left-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/tabs/tab-btm-right-bg.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/tabs/tab-btm-right-bg.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/tabs/tab-sprite.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/tabs/tab-sprite.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/images/vm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/sparkweb/chat/images/vm.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/style/load.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | standard 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/style/resizable.css: -------------------------------------------------------------------------------- 1 | .yresizable-handle { 2 | position:absolute; 3 | z-index:100; 4 | /* ie needs these */ 5 | font-size:1px; 6 | line-height:1px; 7 | overflow:hidden; 8 | background:white; 9 | filter:alpha(opacity=0); 10 | opacity:0; 11 | } 12 | .yresizable-handle-east{ 13 | width:5px; 14 | cursor:e-resize; 15 | right:0px; 16 | top:0px; 17 | height:100%; 18 | } 19 | .yresizable-handle-south{ 20 | width:100%; 21 | cursor:s-resize; 22 | left:0px; 23 | bottom:0px; 24 | height:5px; 25 | } 26 | .yresizable-handle-west{ 27 | width:5px; 28 | cursor:w-resize; 29 | left:0px; 30 | top:0px; 31 | height:100%; 32 | } 33 | .yresizable-handle-north{ 34 | width:100%; 35 | cursor:n-resize; 36 | left:0px; 37 | top:0px; 38 | height:5px; 39 | } 40 | .yresizable-handle-southeast{ 41 | width:6px; 42 | cursor:se-resize; 43 | right:0px; 44 | bottom:0px; 45 | height:6px; 46 | z-index:101; 47 | } 48 | .yresizable-over .yresizable-handle, .yresizable-pinned .yresizable-handle{ 49 | filter:alpha(opacity=100); 50 | opacity:1; 51 | } 52 | .yresizable-over .yresizable-handle-east, .yresizable-pinned .yresizable-handle-east{ 53 | background:url(../images/sizer/e-handle.gif); 54 | background-position: left; 55 | border-left:1px solid #98c0f4; 56 | } 57 | .yresizable-over .yresizable-handle-east, .yresizable-pinned .yresizable-handle-west{ 58 | background:url(../images/sizer/e-handle.gif); 59 | background-position: left; 60 | border-right:1px solid #98c0f4; 61 | } 62 | .yresizable-over .yresizable-handle-south, .yresizable-pinned .yresizable-handle-south{ 63 | background:url(../images/sizer/s-handle.gif); 64 | background-position: top; 65 | border-top:1px solid #98c0f4; 66 | } 67 | .yresizable-over .yresizable-handle-south, .yresizable-pinned .yresizable-handle-north{ 68 | background:url(../images/sizer/s-handle.gif); 69 | background-position: top; 70 | border-bottom:1px solid #98c0f4; 71 | } 72 | .yresizable-over .yresizable-handle-southeast, .yresizable-pinned .yresizable-handle-southeast{ 73 | background-position: top left; 74 | background:url(../images/sizer/se-handle.gif); 75 | } 76 | .yresizable-proxy{ 77 | border: 1px dashed #6593cf; 78 | position:absolute; 79 | overflow:hidden; 80 | visibility:hidden; 81 | z-index:1001; 82 | } 83 | 84 | /** gray theme */ 85 | .ytheme-gray .yresizable-over .yresizable-handle-east, .ytheme-gray .yresizable-pinned .yresizable-handle-east{ 86 | background:url(../images/sizer/gray/e-handle.gif); 87 | background-position: left; 88 | border-left:1px solid #615e55; 89 | } 90 | .ytheme-gray .yresizable-over .yresizable-handle-east,.ytheme-gray .yresizable-pinned .yresizable-handle-west{ 91 | background:url(../images/sizer/gray/e-handle.gif); 92 | background-position: left; 93 | border-right:1px solid #615e55; 94 | } 95 | .ytheme-gray .yresizable-over .yresizable-handle-south,.ytheme-gray .yresizable-pinned .yresizable-handle-south{ 96 | background:url(../images/sizer/gray/s-handle.gif); 97 | background-position: top; 98 | border-top:1px solid #615e55; 99 | } 100 | .ytheme-gray .yresizable-over .yresizable-handle-south,.ytheme-gray .yresizable-pinned .yresizable-handle-north{ 101 | background:url(../images/sizer/gray/s-handle.gif); 102 | background-position: top; 103 | border-bottom:1px solid #615e55; 104 | } 105 | .ytheme-gray .yresizable-over .yresizable-handle-southeast, .ytheme-gray .yresizable-pinned .yresizable-handle-southeast{ 106 | background-position: top left; 107 | background:url(../images/sizer/gray/se-handle.gif); 108 | } 109 | .ytheme-gray .yresizable-proxy{ 110 | border: 1px dashed #615e55; 111 | } -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/style/tabs.css: -------------------------------------------------------------------------------- 1 | .ytab-wrap { 2 | border-bottom:1px solid #6593cf; 3 | padding-top:2px; 4 | } 5 | .ytab-wrap table{ 6 | position:relative; 7 | top:0; left:0; 8 | } 9 | .ytab-strip td{ 10 | padding-left:2px; 11 | } 12 | .ytab-strip a, .ytab-strip span, .ytab-strip em { 13 | display:block; 14 | } 15 | .ytab-strip a { 16 | text-decoration:none !important; 17 | -moz-outline: none; 18 | outline: none; 19 | cursor:pointer; 20 | } 21 | .ytab-strip .ytab-text { 22 | font:bold 11px tahoma,arial,helvetica; 23 | color:#666; 24 | overflow:hidden; 25 | white-space: nowrap; 26 | cursor:pointer; 27 | text-overflow: ellipsis; 28 | } 29 | .ytab-strip .on .ytab-text { 30 | cursor:default; 31 | color:#083772; 32 | } 33 | .ytab-strip .disabled .ytab-text { 34 | cursor:default; 35 | color:#aaaaaa; 36 | } 37 | .ytab-strip .ytab-inner { 38 | padding:4px 10px; 39 | } 40 | 41 | .ytab-strip .on .ytab-right { 42 | background: url(../images/tabs/tab-sprite.gif) no-repeat right 0px; 43 | } 44 | .ytab-strip .on .ytab-left { 45 | background: url(../images/tabs/tab-sprite.gif) no-repeat 0px -100px; 46 | } 47 | .ytab-strip .ytab-right { 48 | background: url(../images/tabs/tab-sprite.gif) no-repeat right -50px; 49 | } 50 | .ytab-strip .ytab-left { 51 | background: url(../images/tabs/tab-sprite.gif) no-repeat 0px -150px; 52 | } 53 | 54 | .ytab-strip a { 55 | position:relative; 56 | top:1px; left:0; 57 | } 58 | .ytab-strip .on a { 59 | 60 | } 61 | .ytab-strip .on .ytab-inner { 62 | padding-bottom:5px; 63 | } 64 | /** closable tabs */ 65 | .ytab-strip .ytab-closable .ytab-inner{ 66 | padding-right:22px; 67 | position:relative; 68 | /*display: inline;*/ 69 | } 70 | .ytab-strip .ytab-closable .close-icon { 71 | line-height: 1px; 72 | font-size:1px; 73 | background-image:url(../images/layout/tab-close.gif); 74 | display:block; 75 | position:absolute; 76 | right:5px;top:4px; 77 | width:11px;height:11px; 78 | cursor:pointer; 79 | } 80 | .ytab-strip .on .close-icon{ 81 | background-image:url(../images/layout/tab-close-on.gif); 82 | } 83 | .ytab-strip .ytab-closable .close-over{ 84 | background-image:url(../images/layout/tab-close-on.gif); 85 | } 86 | 87 | .ytabs-bottom .ytab-wrap { 88 | border-top:1px solid #6593cf; 89 | border-bottom:0px none; 90 | padding-top:0px; 91 | padding-bottom:2px; 92 | } 93 | .ytabs-bottom .ytab-strip .ytab-right { 94 | background: url(../images/tabs/tab-btm-inactive-right-bg.gif) no-repeat bottom left; 95 | } 96 | .ytabs-bottom .ytab-strip .ytab-left { 97 | background: url(../images/tabs/tab-btm-inactive-left-bg.gif) no-repeat bottom right; 98 | } 99 | .ytabs-bottom .ytab-strip .on .ytab-right { 100 | background: url(../images/tabs/tab-btm-right-bg.gif) no-repeat bottom left; 101 | } 102 | .ytabs-bottom .ytab-strip .on .ytab-left { 103 | background: url(../images/tabs/tab-btm-left-bg.gif) no-repeat bottom right; 104 | } 105 | .ytabs-bottom .ytab-strip a { 106 | position:relative; 107 | top:0; left:0; 108 | } 109 | .ytabs-bottom .ytab-strip .on a { 110 | margin-top:-1px; 111 | } 112 | .ytabs-bottom .ytab-strip .on .ytab-inner { 113 | padding-top:5px; 114 | } 115 | 116 | /** gray theme */ 117 | 118 | .ytheme-gray .ytab-wrap { 119 | border-bottom:1px solid #aca899; 120 | } 121 | .ytheme-gray .ytab-strip .on .ytab-text { 122 | cursor:default; 123 | color:#333333; 124 | } 125 | .ytheme-gray .ytabs-top .ytab-strip .on .ytab-right { 126 | background: url(../images/tabs/gray/tab-sprite.gif) no-repeat right 0px; 127 | } 128 | .ytheme-gray .ytabs-top .ytab-strip .on .ytab-left { 129 | background: url(../images/tabs/gray/tab-sprite.gif) no-repeat 0px -100px; 130 | } 131 | .ytheme-gray .ytabs-top .ytab-strip .ytab-right { 132 | background: url(../images/tabs/gray/tab-sprite.gif) no-repeat right -50px; 133 | } 134 | .ytheme-gray .ytabs-top .ytab-strip .ytab-left { 135 | background: url(../images/tabs/gray/tab-sprite.gif) no-repeat 0px -150px; 136 | } 137 | .ytheme-gray .ytab-strip .ytab-closable .close-icon{ 138 | background-image:url(../images/layout/gray/tab-close.gif); 139 | } 140 | .ytheme-gray .ytab-strip .on .close-icon{ 141 | background-image:url(../images/layout/gray/tab-close-on.gif); 142 | } 143 | .ytheme-gray .ytab-strip .ytab-closable .close-over{ 144 | background-image:url(../images/layout/gray/tab-close-on.gif); 145 | } 146 | 147 | .ytheme-gray .ytabs-bottom .ytab-wrap { 148 | border-bottom:0px none; 149 | padding-top:0px; 150 | border-top:1px solid #aca899; 151 | } 152 | .ytheme-gray .ytabs-bottom .ytab-strip .ytab-right { 153 | background: url(../images/tabs/gray/tab-btm-inactive-right-bg.gif) no-repeat bottom left; 154 | } 155 | .ytheme-gray .ytabs-bottom .ytab-strip .ytab-left { 156 | background: url(../images/tabs/gray/tab-btm-inactive-left-bg.gif) no-repeat bottom right; 157 | } 158 | .ytheme-gray .ytabs-bottom .ytab-strip .on .ytab-right { 159 | background: url(../images/tabs/gray/tab-btm-right-bg.gif) no-repeat bottom left; 160 | } 161 | .ytheme-gray .ytabs-bottom .ytab-strip .on .ytab-left { 162 | background: url(../images/tabs/gray/tab-btm-left-bg.gif) no-repeat bottom right; 163 | } -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/chat/style/toolbar.css: -------------------------------------------------------------------------------- 1 | .ytoolbar{ 2 | background-color: #ebeadb; 3 | border: 1px solid #cbc7b8; 4 | display: block; 5 | padding:2px; 6 | } 7 | .mso .ytoolbar, .ygrid-mso .ytoolbar{ 8 | border: 0px none; 9 | background: url(../images/grid/mso-hd.gif); 10 | } 11 | .ytoolbar td,.ytoolbar span,.ytoolbar input,.ytoolbar div{ 12 | font:normal 8pt arial,helvetica; 13 | } 14 | .ytoolbar .ytb-button-disabled .ytb-button-inner{ 15 | color:gray; 16 | cursor:default; 17 | } 18 | .ytoolbar .ytb-button-inner{ 19 | background-position: center; 20 | background-repeat: no-repeat; 21 | display: block; 22 | height: 16px; 23 | width: 16px; 24 | cursor:pointer; 25 | white-space: nowrap; 26 | } 27 | .ytoolbar .ytb-text{ 28 | padding:2px; 29 | } 30 | .ytoolbar .ytb-button{ 31 | padding:2px; 32 | display:block; 33 | } 34 | .ytoolbar .ytb-button-over{ 35 | background-color:#c3d3ed; 36 | border:1px solid #316ac5; 37 | padding:1px; 38 | } 39 | .ytoolbar .ytb-sep { 40 | background-image: url(../images/grid/grid-split.gif); 41 | background-position: center; 42 | background-repeat: no-repeat; 43 | display: block; 44 | font-size: 1px; 45 | height: 16px; 46 | width:4px; 47 | overflow: hidden; 48 | cursor:default; 49 | margin: 0px 2px 0px; 50 | border:0px; 51 | } 52 | .mso .ytoolbar .ytb-sep, .ygrid-mso .ytoolbar .ytb-sep{ 53 | background-image: url(../images/grid/grid-blue-split.gif); 54 | } -------------------------------------------------------------------------------- /openfire-websockets/plugin/sparkweb/site.manifest: -------------------------------------------------------------------------------- 1 | CACHE MANIFEST 2 | # v0.9 update 20120905-sylvestre mba - client navigator cache css, js, gif, png change version number for purge cache. 3 | 4 | CACHE: 5 | index.html 6 | chat/javascript/sparkweb.js 7 | chat/javascript/spank.js 8 | chat/javascript/xmpp-ws.js 9 | chat/javascript/xmpp-bosh.js 10 | chat/javascript/thirdparty.js 11 | chat/javascript/yui.js 12 | chat/style/basic-dialog.css 13 | chat/style/grid.css 14 | chat/style/layout.css 15 | chat/style/menu.css 16 | chat/style/resizable.css 17 | chat/style/tabs.css 18 | chat/style/toolbar.css 19 | chat/style/login.css 20 | chat/style/spank.css 21 | 22 | chat/images/login/logo_SparkWeb-small.gif 23 | chat/images/login/anim-loading.gif 24 | chat/images/login/logo_SparkWeb-large.gif 25 | chat/images/login/buttons/btn_Small.gif 26 | chat/images/login/backgrounds/bg_body.gif 27 | chat/images/login/backgrounds/bg_LoginTop-NoButton.png 28 | chat/images/login/backgrounds/bg_LoginBody.png 29 | chat/images/login/backgrounds/bg_Login-Bottom.png 30 | chat/images/login/backgrounds/bg_Footer.png 31 | chat/images/login/backgrounds/bg_Footer.png 32 | chat/images/sparkweb-black/icon-tinyarrow-dwn.gif 33 | chat/images/sparkweb-black/bg-roster-userhighlight.gif 34 | chat/images/sparkweb-black/icon-arrow-dwn.gif 35 | chat/images/sparkweb-black/bg_grouplabel.gif 36 | chat/images/sparkweb-black/bg_usercontrols.gif 37 | chat/images/sparkweb-black/bg_titlebar.gif 38 | chat/images/sparkweb-black/handle-e.gif 39 | chat/images/sparkweb-black/close-sprite.gif 40 | chat/images/sparkweb-black/icon-startchat.png 41 | chat/images/sparkweb-black/icon-groupchat.png 42 | chat/images/sparkweb-black/icon-addcontact.png 43 | chat/images/im_available.png 44 | chat/images/im_away.png 45 | chat/images/layout/panel-close.gif 46 | chat/images/layout/panel-title-light-bg.gif 47 | chat/images/layout/collapse.gif 48 | chat/images/layout/expand.gif 49 | chat/images/im_pending.png 50 | chat/images/gradient-bg.gif 51 | #cache the login page in case network is not ready, users think that network is ok 52 | FALLBACK: 53 | offline.html 54 | #all other files which are not cached work directly with network 55 | NETWORK: 56 | * -------------------------------------------------------------------------------- /openfire-websockets/plugin/web/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | websocketsAdmin 6 | com.ifsoft.websockets.servlet.WebSocketsAdmin 7 | 8 | 9 | 10 | websocketsAdmin 11 | /websockets-properties 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /openfire-websockets/plugin/web/images/add-16x16.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/web/images/add-16x16.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/web/images/available.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/web/images/available.png -------------------------------------------------------------------------------- /openfire-websockets/plugin/web/images/delete-16x16.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/web/images/delete-16x16.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/web/images/edit-16x16.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/web/images/edit-16x16.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/web/images/icon_calendarpicker.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/web/images/icon_calendarpicker.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/web/images/icon_help_14x14.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/web/images/icon_help_14x14.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/web/images/refresh-16x16.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/web/images/refresh-16x16.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/web/images/success-16x16.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/web/images/success-16x16.gif -------------------------------------------------------------------------------- /openfire-websockets/plugin/web/images/unavailable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/plugin/web/images/unavailable.png -------------------------------------------------------------------------------- /openfire-websockets/src/com/ifsoft/websockets/BasicStreamID.java: -------------------------------------------------------------------------------- 1 | package com.ifsoft.websockets; 2 | 3 | import org.jivesoftware.openfire.StreamID; 4 | 5 | public class BasicStreamID implements StreamID { 6 | String id; 7 | 8 | public BasicStreamID(String id) { 9 | this.id = id; 10 | } 11 | 12 | public String getID() { 13 | return id; 14 | } 15 | 16 | public String toString() { 17 | return id; 18 | } 19 | 20 | public int hashCode() { 21 | return id.hashCode(); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /openfire-websockets/src/com/ifsoft/websockets/WSConnection.java: -------------------------------------------------------------------------------- 1 | package com.ifsoft.websockets; 2 | 3 | import org.slf4j.Logger; 4 | import org.slf4j.LoggerFactory; 5 | 6 | import java.security.cert.Certificate; 7 | 8 | import org.jivesoftware.openfire.SessionPacketRouter; 9 | import org.jivesoftware.openfire.auth.UnauthorizedException; 10 | import org.jivesoftware.openfire.net.VirtualConnection; 11 | import org.jivesoftware.openfire.session.LocalClientSession; 12 | import org.xmpp.packet.Packet; 13 | 14 | import com.ifsoft.websockets.servlet.XMPPServlet; 15 | 16 | public class WSConnection extends VirtualConnection 17 | { 18 | private static Logger Log = LoggerFactory.getLogger( "WSConnection" ); 19 | private SessionPacketRouter router; 20 | private String remoteAddr; 21 | private String hostName; 22 | private LocalClientSession session; 23 | private XMPPServlet.XMPPWebSocket socket; 24 | private boolean isSecure = false; 25 | 26 | public WSConnection( String remoteAddr, String hostName ) { 27 | this.remoteAddr = remoteAddr; 28 | this.hostName = hostName; 29 | } 30 | 31 | public void setSocket( XMPPServlet.XMPPWebSocket socket ) { 32 | this.socket = socket; 33 | } 34 | 35 | public boolean isSecure() { 36 | return isSecure; 37 | } 38 | 39 | public void setSecure(boolean isSecure) { 40 | this.isSecure = isSecure; 41 | } 42 | 43 | public SessionPacketRouter getRouter() 44 | { 45 | return router; 46 | } 47 | 48 | public void setRouter(SessionPacketRouter router) 49 | { 50 | this.router = router; 51 | } 52 | 53 | public void closeVirtualConnection() 54 | { 55 | Log.debug("WSConnection - close "); 56 | this.socket.disconnect(); 57 | } 58 | 59 | public byte[] getAddress() { 60 | return remoteAddr.getBytes(); 61 | } 62 | 63 | public String getHostAddress() { 64 | return remoteAddr; 65 | // return wsSocket.getHostAddress(); 66 | } 67 | 68 | public String getHostName() { 69 | return ( hostName != null ) ? hostName : "0.0.0.0"; 70 | // return ( wsSocket.getHostName() == null ) ? wsSocket.getHostName() : "0.0.0.0"; 71 | } 72 | 73 | public void systemShutdown() { 74 | 75 | } 76 | 77 | public void deliver(Packet packet) throws UnauthorizedException 78 | { 79 | deliverRawText(packet.toXML()); 80 | } 81 | 82 | public void deliverRawText(String text) 83 | { 84 | this.socket.deliver(text); 85 | } 86 | 87 | public Certificate[] getPeerCertificates() { 88 | return null; 89 | } 90 | 91 | } 92 | -------------------------------------------------------------------------------- /openfire-websockets/src/com/ifsoft/websockets/plugin/WebSocketsPlugin.java: -------------------------------------------------------------------------------- 1 | package com.ifsoft.websockets.plugin; 2 | 3 | import org.jivesoftware.openfire.container.Plugin; 4 | import org.jivesoftware.openfire.container.PluginManager; 5 | import org.jivesoftware.util.*; 6 | import org.jivesoftware.openfire.http.HttpBindManager; 7 | import org.jivesoftware.openfire.session.LocalClientSession; 8 | import org.jivesoftware.openfire.SessionManager; 9 | 10 | import java.util.*; 11 | import java.util.concurrent.*; 12 | import java.util.concurrent.ConcurrentHashMap; 13 | import java.io.File; 14 | import java.net.InetSocketAddress; 15 | 16 | import org.slf4j.Logger; 17 | import org.slf4j.LoggerFactory; 18 | 19 | import org.eclipse.jetty.server.handler.ContextHandlerCollection; 20 | import org.eclipse.jetty.servlet.ServletContextHandler; 21 | import org.eclipse.jetty.servlet.ServletHolder; 22 | import org.eclipse.jetty.webapp.WebAppContext; 23 | 24 | import com.ifsoft.websockets.*; 25 | import com.ifsoft.websockets.servlet.XMPPServlet; 26 | 27 | 28 | public class WebSocketsPlugin implements Plugin { 29 | 30 | private static Logger Log = LoggerFactory.getLogger("WebSocketsPlugin"); 31 | private static final String NAME = "ws"; 32 | private static final String DESCRIPTION = "WebSockets Plugin for Openfire"; 33 | 34 | private PluginManager manager; 35 | private File pluginDirectory; 36 | 37 | private ConcurrentHashMap sockets = new ConcurrentHashMap(); 38 | 39 | 40 | //------------------------------------------------------- 41 | // 42 | // 43 | // 44 | //------------------------------------------------------- 45 | 46 | public void initializePlugin(PluginManager manager, File pluginDirectory) { 47 | Log.info( "["+ NAME + "] initialize " + NAME + " plugin resources"); 48 | 49 | String appName = JiveGlobals.getProperty("websockets.webapp.name", NAME); 50 | 51 | try { 52 | 53 | ContextHandlerCollection contexts = HttpBindManager.getInstance().getContexts(); 54 | 55 | try { 56 | Log.info( "["+ NAME + "] initialize " + NAME + " initialize Websockets " + appName); 57 | ServletContextHandler context = new ServletContextHandler(contexts, "/" + appName, ServletContextHandler.SESSIONS); 58 | context.addServlet(new ServletHolder(new XMPPServlet()),"/server"); 59 | 60 | WebAppContext context2 = new WebAppContext(contexts, pluginDirectory.getPath(), "/websockets"); 61 | context.setWelcomeFiles(new String[]{"index.html"}); 62 | 63 | } 64 | catch(Exception e) { 65 | Log.error( "An error has occurred", e ); 66 | } 67 | } 68 | catch (Exception e) { 69 | Log.error("Error initializing WebSockets Plugin", e); 70 | } 71 | } 72 | 73 | public void destroyPlugin() { 74 | Log.info( "["+ NAME + "] destroy " + NAME + " plugin resources"); 75 | 76 | try { 77 | 78 | for (XMPPServlet.XMPPWebSocket socket : sockets.values()) 79 | { 80 | try { 81 | LocalClientSession session = socket.getSession(); 82 | session.close(); 83 | SessionManager.getInstance().removeSession( session ); 84 | session = null; 85 | 86 | } catch ( Exception e ) { } 87 | } 88 | 89 | sockets.clear(); 90 | 91 | } 92 | catch (Exception e) { 93 | Log.error("["+ NAME + "] destroyPlugin exception " + e); 94 | } 95 | } 96 | 97 | public String getName() { 98 | return NAME; 99 | } 100 | 101 | public String getDescription() { 102 | return DESCRIPTION; 103 | } 104 | 105 | public int getCount() { 106 | return this.sockets.size(); 107 | } 108 | 109 | public ConcurrentHashMap getSockets() { 110 | return sockets; 111 | } 112 | } -------------------------------------------------------------------------------- /openfire-websockets/src/com/ifsoft/websockets/servlet/WebSocketsAdmin.java: -------------------------------------------------------------------------------- 1 | package com.ifsoft.websockets.servlet; 2 | 3 | import java.io.IOException; 4 | import java.util.*; 5 | 6 | import javax.servlet.RequestDispatcher; 7 | import javax.servlet.ServletException; 8 | import javax.servlet.ServletConfig; 9 | import javax.servlet.ServletContext; 10 | import javax.servlet.ServletOutputStream; 11 | import javax.servlet.http.HttpServlet; 12 | import javax.servlet.http.HttpServletRequest; 13 | import javax.servlet.http.HttpServletResponse; 14 | 15 | import org.jivesoftware.util.JiveGlobals; 16 | 17 | import org.slf4j.Logger; 18 | import org.slf4j.LoggerFactory; 19 | 20 | 21 | public class WebSocketsAdmin extends HttpServlet 22 | { 23 | private static Logger Log = LoggerFactory.getLogger("WebSocketsAdmin"); 24 | 25 | private String action = "edit"; 26 | 27 | private String webAppName = "ws"; 28 | 29 | 30 | private String errorMessage = null; 31 | 32 | public void init(ServletConfig servletConfig) throws ServletException { 33 | super.init(servletConfig); 34 | } 35 | 36 | 37 | public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 38 | { 39 | response.setHeader("Expires", "Sat, 6 May 1995 12:00:00 GMT"); 40 | response.setHeader("Cache-Control", "no-store, no-cache, must-revalidate"); 41 | response.addHeader("Cache-Control", "post-check=0, pre-check=0"); 42 | response.setHeader("Pragma", "no-cache"); 43 | response.setHeader("Content-Type", "text/html"); 44 | response.setHeader("Connection", "close"); 45 | 46 | ServletOutputStream out = response.getOutputStream(); 47 | Map errors = new HashMap(); 48 | 49 | action = request.getParameter("action"); 50 | 51 | if (action == null) { 52 | action = "edit"; 53 | } 54 | 55 | if(action.equals("edit")) { 56 | 57 | webAppName = JiveGlobals.getProperty("websockets.webapp.name", webAppName); 58 | 59 | displayPage(out, errors.size()); 60 | } 61 | 62 | else if(action.equals("update")) { 63 | 64 | webAppName = request.getParameter("webAppName"); 65 | 66 | validateFields(errors); 67 | 68 | if(errors.isEmpty()) { 69 | 70 | try { 71 | 72 | JiveGlobals.setProperty("websockets.webapp.name", webAppName); 73 | 74 | Log.info("WebSockets Properties updated"); 75 | } 76 | catch (Exception e) { 77 | Log.error(e.getMessage(), e); 78 | } 79 | 80 | response.sendRedirect("websockets-properties"); 81 | 82 | } 83 | else { 84 | displayPage(out, errors.size()); 85 | } 86 | 87 | } 88 | else { 89 | 90 | displayPage(out, errors.size()); 91 | } 92 | } 93 | 94 | private void displayPage(ServletOutputStream out, int errorSize) { 95 | 96 | try { 97 | out.println(""); 98 | out.println(""); 99 | out.println(" "); 100 | out.println(" WebSockets Properties"); 101 | out.println(" "); 102 | out.println(" "); 103 | out.println(" "); 104 | 105 | if (errorSize > 0) { 106 | out.println("
"); 107 | out.println(errorMessage); 108 | out.println("
"); 109 | } 110 | out.println(""); 111 | out.println("Use the form below to edit WebSockets Properties.
"); 112 | out.println("

"); 113 | out.println("
"); 114 | 115 | if(action.equals("edit")) { 116 | out.println(""); 117 | 118 | } else { 119 | out.println(""); 120 | } 121 | out.println(""); 122 | 123 | out.println("
General
"); 124 | out.println("
"); 125 | out.println(" "); 126 | out.println(" "); 127 | out.println(" "); 128 | out.println("
Web Application NameName of WebSockets web application.
"); 129 | out.println("
"); 130 | out.println(""); 131 | 132 | out.println(" 

 

"); 133 | out.println("

"); 134 | out.println(""); 135 | out.println(""); 136 | out.println(""); 137 | } 138 | catch (Exception e) { 139 | Log.error("displayPage exception", e); 140 | } 141 | } 142 | 143 | 144 | private void validateFields(Map errors) 145 | { 146 | if(webAppName.length() < 1 ) { 147 | errors.put("webAppName", ""); 148 | errorMessage = "Please specify a web application name"; 149 | } 150 | } 151 | 152 | } 153 | 154 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/1.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/css/boxy.css: -------------------------------------------------------------------------------- 1 | .boxy-wrapper { position: absolute; } 2 | .boxy-wrapper.fixed { position: fixed; } 3 | 4 | /* Modal */ 5 | 6 | .boxy-modal-blackout { position: absolute; background-color: black; left: 0; top: 0; } 7 | 8 | /* Border */ 9 | 10 | .boxy-wrapper { empty-cells: show; } 11 | .boxy-wrapper .top-left, 12 | .boxy-wrapper .top-right, 13 | .boxy-wrapper .bottom-right, 14 | .boxy-wrapper .bottom-left { width: 10px; height: 10px; padding: 0 } 15 | 16 | .boxy-wrapper .top-left { background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ bWFnZVJlYWR5ccllPAAAAEhJREFUeNpiZEAFwkBsBcRmQCyGLMGIxFYDYlcg1mPAAhiRFAUAsTID DsAEtc4VnyKYQitc1qErNGMgAjCh+w6fQoaBUQgQYACmOAMMx6kClQAAAABJRU5ErkJggg=='); } 17 | .boxy-wrapper .top-right { background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ bWFnZVJlYWR5ccllPAAAAFZJREFUeNpiZGBgmMmACl4B8SkgPgbEb2GCzEDsi6aQG4jVgFgUiD/C FGNTCAPiUPwapJiJAT9QBmJXIBZmYSAM9ID4ERMDccCMWIVixCpkoL5CgAADAJE2CrNWeL/VAAAA AElFTkSuQmCC'); } 18 | .boxy-wrapper .bottom-right { background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ bWFnZVJlYWR5ccllPAAAAEBJREFUeNpiZGBgmMlABGBiIBIMnMJXxCo8RYzCS0B8jJDCu0C8G4jf shAwCaToFoiDTeErkJtA1oFMggkCBBgAkswMUBkuYAgAAAAASUVORK5CYII='); } 19 | .boxy-wrapper .bottom-left { background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ bWFnZVJlYWR5ccllPAAAAEpJREFUeNpiZGBgmMlABGBiIBLQRuErYhQyAzEPEKsRo/AtEIsCsTgh hd+B+CNUoRA+hQxQU19DnSGOTyFM8T2oDQJAzI2sECDAAH3DCdCC6k/NAAAAAElFTkSuQmCC'); } 20 | 21 | /* IE6+7 hacks for the border. IE7 should support this natively but fails in conjuction with modal blackout bg. */ 22 | /* NB: these must be absolute paths or URLs to your images */ 23 | .boxy-wrapper .top-left { #background: none; #filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ bWFnZVJlYWR5ccllPAAAAEhJREFUeNpiZEAFwkBsBcRmQCyGLMGIxFYDYlcg1mPAAhiRFAUAsTID DsAEtc4VnyKYQitc1qErNGMgAjCh+w6fQoaBUQgQYACmOAMMx6kClQAAAABJRU5ErkJggg=='); } 24 | .boxy-wrapper .top-right { #background: none; #filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ bWFnZVJlYWR5ccllPAAAAFZJREFUeNpiZGBgmMmACl4B8SkgPgbEb2GCzEDsi6aQG4jVgFgUiD/C FGNTCAPiUPwapJiJAT9QBmJXIBZmYSAM9ID4ERMDccCMWIVixCpkoL5CgAADAJE2CrNWeL/VAAAA AElFTkSuQmCC'); } 25 | .boxy-wrapper .bottom-right { #background: none; #filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ bWFnZVJlYWR5ccllPAAAAEBJREFUeNpiZGBgmMlABGBiIBIMnMJXxCo8RYzCS0B8jJDCu0C8G4jf shAwCaToFoiDTeErkJtA1oFMggkCBBgAkswMUBkuYAgAAAAASUVORK5CYII='); } 26 | .boxy-wrapper .bottom-left { #background: none; #filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ bWFnZVJlYWR5ccllPAAAAEpJREFUeNpiZGBgmMlABGBiIBLQRuErYhQyAzEPEKsRo/AtEIsCsTgh hd+B+CNUoRA+hQxQU19DnSGOTyFM8T2oDQJAzI2sECDAAH3DCdCC6k/NAAAAAElFTkSuQmCC'); } 27 | 28 | .boxy-wrapper .top, 29 | .boxy-wrapper .bottom { height: 10px; background-color: black; opacity: 0.6; filter: alpha(opacity=60); padding: 0 } 30 | 31 | .boxy-wrapper .left, 32 | .boxy-wrapper .right { width: 10px; background-color: black; opacity: 0.6; filter: alpha(opacity=60); padding: 0 } 33 | 34 | /* Title bar */ 35 | 36 | .boxy-wrapper .title-bar { background-color: black; padding: 6px; position: relative; } 37 | .boxy-wrapper .title-bar.dragging { cursor: move; } 38 | .boxy-wrapper .title-bar h2 { font-size: 12px; color: white; line-height: 1; margin: 0; padding: 0; font-weight: normal; } 39 | .boxy-wrapper .title-bar .close { color: white; position: absolute; top: 6px; right: 6px; font-size: 90%; line-height: 1; } 40 | 41 | /* Content Region */ 42 | 43 | .boxy-inner { background-color: white; padding: 0 } 44 | .boxy-content { padding: 15px; } 45 | 46 | /* Question Boxes */ 47 | 48 | .boxy-wrapper .question { width: 350px; min-height: 80px; } 49 | .boxy-wrapper .answers { text-align: right; } 50 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/css/left.css: -------------------------------------------------------------------------------- 1 | #gtalklet_layer { 2 | right: initial; 3 | left: 3px; 4 | direction: rtl; 5 | } 6 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/css/right.css: -------------------------------------------------------------------------------- 1 | #gtalklet_layer { 2 | left: initial; 3 | right: 0px; 4 | direction: ltr; 5 | } 6 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/html/background.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/html/guide.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | OfChat 5 | 6 | 29 | 30 | 31 |
32 |

Refresh existing tabs to start Openfire Chat. Look at bottom right bar

33 |
34 | 35 | 36 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/html/notification.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 14 | 65 | 66 | 67 |
68 | 69 | 70 |

71 |
72 | 73 | 74 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/html/updated.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | OfChat 5 | 6 | 33 | 34 | 35 |
36 |

OfChat Changelog

37 | 38 |
39 |

0.0.0.10

40 |
    41 |
  • Fixed: Blocking message pending 10000 for BLOCKING
  • 42 |
  • Changed: set websocket idle timeout
  • 43 |
44 |
45 | 46 |
47 |

0.0.0.9

48 |
    49 |
  • New: Added support for Jingle Audio/Video using WebRTC JSEP
  • 50 |
  • Changed: Fixed various faults
  • 51 |
52 |
53 | 54 |
55 |

0.0.0.8

56 |
    57 |
  • New: Added support for Jingle Audio/Video using WebRTC Roap
  • 58 |
  • Changed: Removed support for Redfire
  • 59 |
60 |
61 | 62 |
63 |

0.0.0.7

64 |
    65 |
  • Fixed: Quotes replaced with escape characters in chat message
  • 66 |
  • Fixed: Reconnection failure creating "Authenticating.." message
  • 67 |
  • Fixed: Accept incoming messages from federated users not on roster
  • 68 |
  • Fixed: Notifications for group chat
  • 69 |
  • Fixed: Accept broadcasts messages (no chat type) from components or server
  • 70 |
  • New: Added support for editing/viewing vCards and Avatars (XEP-0054 and XEP-0153)
  • 71 |
72 |
73 | 74 |
75 |

0.0.0.6

76 |
    77 |
  • New. Added partial support for Redfire Plugin. Audio video in chat and groupchat. Compatible with Redfire Spark plugin
  • 78 |
  • Changed: Added Boxy jQuery plugin for UI windowing, dialogs and alerts
  • 79 |
80 |
81 | 82 |
83 |

0.0.0.5

84 |
    85 |
  • New. Added partial support for XEP-0100 Gateways. Requires Kraken plugin
  • 86 |
87 |
88 | 89 |
90 |

0.0.0.4

91 |
    92 |
  • New. Added partial support for XEP-0136 Archiving. Requires OpenArchive plugin
  • 93 |
  • New. Added partial support for XEP-0045 MUC. Requires Openfire client management plugin
  • 94 |
95 |
96 | 97 |
98 |

0.0.0.3

99 |
    100 |
  • Fixed. Added missing enable/disable icons
  • 101 |
102 |
103 | 104 |
105 |

0.0.0.2

106 |
    107 |
  • Changed. Minimal Chrome version down-graded to 14 for OSX
  • 108 |
  • Fixed. Filter for smilies removing HTML tags
  • 109 |
110 |
111 | 112 |
113 |

0.0.0.1

114 |
    115 |
  • New. Project cloned from Gtalklet by Sean Zheng
  • 116 |
  • New. Added Strophe Openfire.Connection class for Openfire WebSocket plugin
  • 117 |
  • Changed. Handled contact's first <presence> arriving before get roster response
  • 118 |
  • Changed. Handled both 2way subscription expected by Openfire
  • 119 |
  • Changed. Added avatars
  • 120 |
  • Changed. Added emtional icons (smilies)
  • 121 |
122 |
123 |
124 | 125 | 126 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/icon.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/icon.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/icon.png -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/icon128.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/icon128.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/icon16.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/icon16.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/icon48.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/icon48.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/icon_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/icon_disabled.png -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/icon_enabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/icon_enabled.png -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/emoticons/angry.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/emoticons/angry.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/emoticons/blush.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/emoticons/blush.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/emoticons/confused.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/emoticons/confused.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/emoticons/cool.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/emoticons/cool.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/emoticons/cry.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/emoticons/cry.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/emoticons/grin.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/emoticons/grin.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/emoticons/happy.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/emoticons/happy.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/emoticons/laugh.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/emoticons/laugh.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/emoticons/love.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/emoticons/love.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/emoticons/mischief.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/emoticons/mischief.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/emoticons/plain.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/emoticons/plain.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/emoticons/sad.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/emoticons/sad.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/emoticons/shocked.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/emoticons/shocked.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/emoticons/silly.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/emoticons/silly.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/emoticons/wink.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/emoticons/wink.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/gateways/aim.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/gateways/aim.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/gateways/facebook.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/gateways/facebook.png -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/gateways/gtalk.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/gateways/gtalk.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/gateways/msn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/gateways/msn.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/gateways/twitter.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/gateways/twitter.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/gateways/xmpp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/gateways/xmpp.png -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/gateways/yahoo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/gateways/yahoo.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/media/camera.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/media/camera.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/media/camera.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/media/camera.jpg -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/images/media/mic.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/images/media/mic.jpg -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/js/gtalklet.js: -------------------------------------------------------------------------------- 1 | var gtalklet = {}; 2 | 3 | gtalklet._$ = jQuery.noConflict(); 4 | gtalklet._context = null; 5 | 6 | gtalklet.$ = function(selector, context) { 7 | if (typeof(selector) === 'string') { 8 | // ????????????? ????div 9 | var regex = /^\.| \./; 10 | var replace = ' div.'; 11 | selector = selector.replace(regex, replace); 12 | } 13 | 14 | if (!context) { 15 | if (!gtalklet._context || gtalklet._context.length === 0) { 16 | gtalklet._context = gtalklet._$('#gtalklet_layer'); 17 | } 18 | context = gtalklet._context; 19 | } 20 | 21 | return gtalklet._$.apply(this, arguments); 22 | }; 23 | 24 | gtalklet._$.extend(gtalklet.$, gtalklet._$); 25 | 26 | // ??? 27 | assistant.init(gtalklet.$); 28 | follower.init(gtalklet.$); 29 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/js/injection/left.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/js/injection/left.js -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/js/injection/right.js: -------------------------------------------------------------------------------- 1 | if (typeof(gtalklet) !== 'undefined') { 2 | var layer = gtalklet.$('#gtalklet_layer').hide(); 3 | var html = gtalklet.$('html'); 4 | var body = gtalklet.$('body', html); 5 | 6 | function gtalklet_align_right() { 7 | var htmlOverflowY = html.css('overflowY'); 8 | var bodyOverflowY = body.css('overflowY'); 9 | var scrollBarVisible = htmlOverflowY === 'scroll' || bodyOverflowY === 'scroll' || (gtalklet.$(document).height() > gtalklet.$(window).height() && htmlOverflowY !== 'hidden' && bodyOverflowY !== 'hidden'); 10 | 11 | var $style = gtalklet.$('#gtalklet_right_css'); 12 | var scrollbarWidth = gtalklet.$.scrollbarWidth(); 13 | // lion 14 | if (scrollbarWidth == 0) { 15 | scrollbarWidth = 13; 16 | scrollBarVisible = false; 17 | } 18 | 19 | if (!scrollBarVisible) { 20 | var content = '#gtalklet_layer {right: ' + scrollbarWidth + 'px!important;}'; 21 | } else { 22 | var content = ''; 23 | } 24 | 25 | if ($style.length) { 26 | $style.html(content); 27 | } else { 28 | gtalklet.$("").appendTo(body); 29 | } 30 | layer.show(); 31 | }; 32 | 33 | // ??body????????????? 34 | body.get(0).addEventListener('overflowchanged', function() { 35 | if (gtalklet_align_right) { 36 | gtalklet_align_right(); 37 | } 38 | }, false); 39 | 40 | gtalklet_align_right(); 41 | } 42 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/js/strophejs/CHANGELOG.txt: -------------------------------------------------------------------------------- 1 | # Strophe.js Change Log 2 | 3 | ## Version 1.0.2 - 2011-06-19 4 | 5 | * Fix security bug where DIGEST-MD5 client nonce was not properly 6 | randomized. 7 | * Fix double escaping in copyElement. 8 | * Fix IE errors related to importNode. 9 | * Add ability to pass text into Builder.c(). 10 | * Improve performance by skipping debugging callbacks when not 11 | overridden. 12 | * Wrap handler runs in try/catch so they don't affect or remove later 13 | handlers. 14 | * Add ' and " to escaped characters and other escaping fixes. 15 | * Fix _throttledRequestHandler to use proper window size. 16 | * Fix timed handler management. 17 | * Fix flXHR plugin to better deal with errors. 18 | * Fix bind() to be ECMAScript 5 compatible. 19 | * Use bosh.metajack.im in examples so they work out of the box. 20 | * Add simple XHR tests. 21 | * Update basic example to HTML5. 22 | * Move community plugins to their own repository. 23 | * Fix bug causing infinite retries. 24 | * Fix 5xx error handling. 25 | * Store stream:features for later use by plugins. 26 | * Fix to prevent passing stanzas during disconnect. 27 | * Fix handling of disconnect responses. 28 | * Fix getBareJidFromJid to return null on error. 29 | * Fix equality testing in matchers so that string literals and string 30 | objects both match. 31 | * Fix bare matching on missing from attributes. 32 | * Remove use of reserved word self. 33 | * Fix various documentation errors. 34 | 35 | ## Version 1.0.1 - 2010-01-27 36 | 37 | * Fix handling of window, hold, and wait attributes. Bug #75. 38 | 39 | ## Version 1.0 - 2010-01-01 40 | 41 | * First release. 42 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/js/strophejs/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2006-2009 Collecta, Inc. 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/js/strophejs/README.txt: -------------------------------------------------------------------------------- 1 | Strophe.js is a JavaScript library for speaking XMPP via BOSH (XEP 124 2 | and 206). It is licensed under the MIT license, except for the files 3 | base64.js and md5.js, which are licensed as public domain and 4 | BSD (see these files for details). 5 | 6 | It has been tested on Firefox 1.5, 2.x, and 3.x, IE 6, 7, and 8, Safari, Mobile 7 | Safari, Chrome, and it should also work on the mobile Opera browser as 8 | well as the desktop Opera browser. 9 | 10 | The homepage for Strophe is http://strophe.im/strophejs 11 | 12 | The book Professional XMPP Programming with JavaScript and jQuery is 13 | also available, which covers Strophe in detail in the context of web 14 | applications. You can find more information at 15 | http://professionalxmpp.com. 16 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/js/strophejs/plugins/strophe.flxhr.js: -------------------------------------------------------------------------------- 1 | /* flXHR plugin 2 | ** 3 | ** This plugin implements cross-domain XmlHttpRequests via an invisible 4 | ** Flash plugin. 5 | ** 6 | ** In order for this to work, the BOSH service *must* serve a 7 | ** crossdomain.xml file that allows the client access. 8 | ** 9 | ** flXHR.js should be loaded before this plugin. 10 | */ 11 | 12 | Strophe.addConnectionPlugin('flxhr', { 13 | init: function (conn) { 14 | // replace Strophe.Request._newXHR with new flXHR version 15 | // if flXHR is detected 16 | if (flensed && flensed.flXHR) { 17 | Strophe.Request.prototype._newXHR = function () { 18 | var xhr = new flensed.flXHR({ 19 | autoUpdatePlayer: true, 20 | instancePooling: true, 21 | noCacheHeader: false, 22 | onerror: function () { 23 | conn._changeConnectStatus(Strophe.Status.CONNFAIL, 24 | "flXHR connection error"); 25 | conn._onDisconnectTimeout(); 26 | }}); 27 | xhr.onreadystatechange = this.func.bind(null, this); 28 | 29 | return xhr; 30 | }; 31 | } else { 32 | Strophe.error("flXHR plugin loaded, but flXHR not found." + 33 | " Falling back to native XHR implementation."); 34 | } 35 | } 36 | }); 37 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/js/strophejs/src/base64.js: -------------------------------------------------------------------------------- 1 | // This code was written by Tyler Akins and has been placed in the 2 | // public domain. It would be nice if you left this header intact. 3 | // Base64 code from Tyler Akins -- http://rumkin.com 4 | 5 | var Base64 = (function () { 6 | var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; 7 | 8 | var obj = { 9 | /** 10 | * Encodes a string in base64 11 | * @param {String} input The string to encode in base64. 12 | */ 13 | encode: function (input) { 14 | var output = ""; 15 | var chr1, chr2, chr3; 16 | var enc1, enc2, enc3, enc4; 17 | var i = 0; 18 | 19 | do { 20 | chr1 = input.charCodeAt(i++); 21 | chr2 = input.charCodeAt(i++); 22 | chr3 = input.charCodeAt(i++); 23 | 24 | enc1 = chr1 >> 2; 25 | enc2 = ((chr1 & 3) << 4) | (chr2 >> 4); 26 | enc3 = ((chr2 & 15) << 2) | (chr3 >> 6); 27 | enc4 = chr3 & 63; 28 | 29 | if (isNaN(chr2)) { 30 | enc3 = enc4 = 64; 31 | } else if (isNaN(chr3)) { 32 | enc4 = 64; 33 | } 34 | 35 | output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2) + 36 | keyStr.charAt(enc3) + keyStr.charAt(enc4); 37 | } while (i < input.length); 38 | 39 | return output; 40 | }, 41 | 42 | /** 43 | * Decodes a base64 string. 44 | * @param {String} input The string to decode. 45 | */ 46 | decode: function (input) { 47 | var output = ""; 48 | var chr1, chr2, chr3; 49 | var enc1, enc2, enc3, enc4; 50 | var i = 0; 51 | 52 | // remove all characters that are not A-Z, a-z, 0-9, +, /, or = 53 | input = input.replace(/[^A-Za-z0-9\+\/\=]/g, ""); 54 | 55 | do { 56 | enc1 = keyStr.indexOf(input.charAt(i++)); 57 | enc2 = keyStr.indexOf(input.charAt(i++)); 58 | enc3 = keyStr.indexOf(input.charAt(i++)); 59 | enc4 = keyStr.indexOf(input.charAt(i++)); 60 | 61 | chr1 = (enc1 << 2) | (enc2 >> 4); 62 | chr2 = ((enc2 & 15) << 4) | (enc3 >> 2); 63 | chr3 = ((enc3 & 3) << 6) | enc4; 64 | 65 | output = output + String.fromCharCode(chr1); 66 | 67 | if (enc3 != 64) { 68 | output = output + String.fromCharCode(chr2); 69 | } 70 | if (enc4 != 64) { 71 | output = output + String.fromCharCode(chr3); 72 | } 73 | } while (i < input.length); 74 | 75 | return output; 76 | } 77 | }; 78 | 79 | return obj; 80 | })(); 81 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/js/tab/autolink.js: -------------------------------------------------------------------------------- 1 | /* 2 | * http://codesnipp.it/code/793 3 | */ 4 | (function($) { 5 | $.fn.extend({ 6 | autoLink: function(options){ 7 | var classes = options.class || ''; 8 | var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig; 9 | /* Credit for the regex above goes to @elijahmanor on Twitter, so follow that awesome guy! */ 10 | this.each( function(){ 11 | $(this).html( $(this).html().replace(exp,"$1") ); 12 | }); 13 | return this; 14 | } 15 | }); 16 | })(jQuery); 17 | 18 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/js/tab/autoresize.js: -------------------------------------------------------------------------------- 1 | /* 2 | * jQuery autoResize (textarea auto-resizer) 3 | * @copyright James Padolsey http://james.padolsey.com 4 | * @version 1.04 5 | */ 6 | 7 | (function($){ 8 | 9 | $.fn.autoResize = function(options) { 10 | 11 | // Just some abstracted details, 12 | // to make plugin users happy: 13 | var settings = $.extend({ 14 | onResize : function(){}, 15 | animate : true, 16 | animateDuration : 150, 17 | animateCallback : function(){}, 18 | extraSpace : 20, 19 | emptySpace : 20, 20 | limit: 1000 21 | }, options); 22 | 23 | // Only textarea's auto-resize: 24 | this.filter('textarea').each(function(){ 25 | 26 | // Get rid of scrollbars and disable WebKit resizing: 27 | var textarea = $(this).css({resize:'none','overflow-y':'hidden'}), 28 | 29 | // Cache original height, for use later: 30 | origHeight = textarea.height(), 31 | 32 | // Need clone of textarea, hidden off screen: 33 | clone = (function(){ 34 | 35 | // Properties which may effect space taken up by chracters: 36 | var props = ['height','width','lineHeight','textDecoration','letterSpacing'], 37 | propOb = {}; 38 | 39 | // Create object of styles to apply: 40 | $.each(props, function(i, prop){ 41 | propOb[prop] = textarea.css(prop); 42 | }); 43 | 44 | // Clone the actual textarea removing unique properties 45 | // and insert before original textarea: 46 | return textarea.clone().removeAttr('id').removeAttr('name').css({ 47 | position: 'absolute', 48 | top: 0, 49 | visibility: 'hidden', 50 | left: -9999 51 | }).css(propOb).attr('tabIndex','-1').insertBefore(textarea); 52 | 53 | })(), 54 | lastScrollTop = null, 55 | updateSize = function(event) { 56 | 57 | // Prepare the clone: 58 | clone.height(0).val($(this).val()).scrollTop(10000); 59 | 60 | // Find the height of text: 61 | // TODO related to 'blur', not so good 62 | var scrollTop = event.type == 'blur' && textarea.val() == '' ? settings.emptySpace : clone.scrollTop() + settings.extraSpace, 63 | toChange = $(this).add(clone); 64 | 65 | // Don't do anything if scrollTop hasen't changed: 66 | if (lastScrollTop === scrollTop) { return; } 67 | lastScrollTop = scrollTop; 68 | 69 | // Check for limit: 70 | if ( scrollTop >= settings.limit ) { 71 | $(this).css('overflow-y',''); 72 | return; 73 | } 74 | // Fire off callback: 75 | settings.onResize.call(this); 76 | 77 | // Either animate or directly apply height: 78 | settings.animate && textarea.css('display') === 'block' ? 79 | toChange.stop().animate({height:scrollTop}, settings.animateDuration, settings.animateCallback) 80 | : toChange.height(scrollTop); 81 | }; 82 | 83 | // Bind namespaced handlers to appropriate events: 84 | textarea 85 | .unbind('.dynSiz') 86 | .bind('focus.dynSiz', updateSize) 87 | //.bind('blur.dynSiz', updateSize) 88 | .bind('keyup.dynSiz', updateSize) 89 | .bind('keydown.dynSiz', updateSize) 90 | .bind('change.dynSiz', updateSize); 91 | 92 | }); 93 | 94 | // Chain: 95 | return this; 96 | 97 | }; 98 | 99 | 100 | 101 | })(jQuery); 102 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/js/tab/follower.js: -------------------------------------------------------------------------------- 1 | /** 2 | * follower???content script???boss?????assistant?????? 3 | */ 4 | 5 | var follower = (function(){ 6 | 7 | var _listened = false, 8 | _port = null, 9 | $ = null, 10 | 11 | /** 12 | * ???follower 13 | */ 14 | init = function(_$) { 15 | $ = _$; 16 | if (!_listened) { 17 | _listened = true; 18 | _listen(); 19 | } 20 | }, 21 | 22 | /** 23 | * ??boss??? 24 | */ 25 | _listen = function() { 26 | chrome.extension.onConnect.addListener(function(port) { 27 | _port = port; 28 | _port.onMessage.addListener(follower._callbackUpdate); 29 | }); 30 | }, 31 | 32 | _sendRequest = function(data, callbackName) { 33 | if (_port) { 34 | _port.postMessage({data: data, callback: callbackName}) ; 35 | } 36 | }, 37 | 38 | /** 39 | * ??boss?????boss??? 40 | */ 41 | report = function(reportKey, parameters, callback) { 42 | if (callback) { 43 | var callbackName = 'gtalklet_callback_' + $.now() + Math.random(); 44 | window[callbackName] = callback; 45 | } 46 | if (!parameters) { 47 | parameters = {}; 48 | } 49 | 50 | _sendRequest({'report' : reportKey, 'parameters': parameters}, callbackName); 51 | }, 52 | 53 | 54 | /** 55 | * ??boss??????/??/??assistant?????? 56 | */ 57 | _callbackUpdate = function(data, port) { 58 | var state = data; 59 | 60 | if (state.callback) { 61 | // ?????????? 62 | var callback = state.callback; 63 | if (window[callback]) { 64 | window[callback](state.stateChange); 65 | delete window[callback]; 66 | } 67 | } else { 68 | if (state.enable) { 69 | // disabled => enabled 70 | assistant.build(state, true); 71 | _sendRequest({report: 'showPageAction'}); 72 | } else if (state.jingleRequest) { 73 | assistant.handleJingle(state); 74 | } else if (state.disable) { 75 | // enabled => disabled 76 | assistant.destroy(true); 77 | _sendRequest({report: 'showPageAction'}); 78 | } else { 79 | if ($.isEmptyObject(state.stateChange)) { 80 | // state???stateChange ?????? 81 | assistant.build(state); 82 | _sendRequest({report: 'showPageAction'}); 83 | } else { 84 | // state??stateChange 85 | // ?????? 86 | assistant.handleStateChange(state.stateChange); 87 | } 88 | } 89 | } 90 | }; 91 | 92 | return { 93 | init:init, 94 | report: report, 95 | _callbackUpdate: _callbackUpdate 96 | }; 97 | 98 | })(); 99 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/js/tab/jquery.scrollTo.js: -------------------------------------------------------------------------------- 1 | /** 2 | * jQuery.ScrollTo - Easy element scrolling using jQuery. 3 | * Copyright (c) 2007-2009 Ariel Flesler - aflesler(at)gmail(dot)com | http://flesler.blogspot.com 4 | * Dual licensed under MIT and GPL. 5 | * Date: 5/25/2009 6 | * @author Ariel Flesler 7 | * @version 1.4.2 8 | * 9 | * http://flesler.blogspot.com/2007/10/jqueryscrollto.html 10 | */ 11 | ;(function(d){var k=d.scrollTo=function(a,i,e){d(window).scrollTo(a,i,e)};k.defaults={axis:'xy',duration:parseFloat(d.fn.jquery)>=1.3?0:1};k.window=function(a){return d(window)._scrollable()};d.fn._scrollable=function(){return this.map(function(){var a=this,i=!a.nodeName||d.inArray(a.nodeName.toLowerCase(),['iframe','#document','html','body'])!=-1;if(!i)return a;var e=(a.contentWindow||a).document||a.ownerDocument||a;return d.browser.safari||e.compatMode=='BackCompat'?e.body:e.documentElement})};d.fn.scrollTo=function(n,j,b){if(typeof j=='object'){b=j;j=0}if(typeof b=='function')b={onAfter:b};if(n=='max')n=9e9;b=d.extend({},k.defaults,b);j=j||b.speed||b.duration;b.queue=b.queue&&b.axis.length>1;if(b.queue)j/=2;b.offset=p(b.offset);b.over=p(b.over);return this._scrollable().each(function(){var q=this,r=d(q),f=n,s,g={},u=r.is('html,body');switch(typeof f){case'number':case'string':if(/^([+-]=)?\d+(\.\d+)?(px|%)?$/.test(f)){f=p(f);break}f=d(f,this);case'object':if(f.is||f.style)s=(f=d(f)).offset()}d.each(b.axis.split(''),function(a,i){var e=i=='x'?'Left':'Top',h=e.toLowerCase(),c='scroll'+e,l=q[c],m=k.max(q,i);if(s){g[c]=s[h]+(u?0:l-r.offset()[h]);if(b.margin){g[c]-=parseInt(f.css('margin'+e))||0;g[c]-=parseInt(f.css('border'+e+'Width'))||0}g[c]+=b.offset[h]||0;if(b.over[h])g[c]+=f[i=='x'?'width':'height']()*b.over[h]}else{var o=f[h];g[c]=o.slice&&o.slice(-1)=='%'?parseFloat(o)/100*m:o}if(/^\d+$/.test(g[c]))g[c]=g[c]<=0?0:Math.min(g[c],m);if(!a&&b.queue){if(l!=g[c])t(b.onAfterFirst);delete g[c]}});t(b.onAfter);function t(a){r.animate(g,j,b.easing,a&&function(){a.call(this,n,b)})}}).end()};k.max=function(a,i){var e=i=='x'?'Width':'Height',h='scroll'+e;if(!d(a).is('html,body'))return a[h]-d(a)[e.toLowerCase()]();var c='client'+e,l=a.ownerDocument.documentElement,m=a.ownerDocument.body;return Math.max(l[h],m[h])-Math.min(l[c],m[c])};function p(a){return typeof a=='object'?a:{top:a,left:a}}})(jQuery); -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/js/tab/jquery.scrollbarWidth.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * jQuery Scrollbar Width v1.0 3 | * 4 | * Copyright 2011, Rasmus Schultz 5 | * Licensed under LGPL v3.0 6 | * http://www.gnu.org/licenses/lgpl-3.0.txt 7 | */ 8 | 9 | /** 10 | * Sean Zheng 11 | * Maybe html is better. e.g. http://www.google.com/404 12 | * 13 | * - $body = $('body'); 14 | * + $body = $('html'); 15 | */ 16 | (function($){ 17 | 18 | $.scrollbarWidth = function() { 19 | if (!$._scrollbarWidth) { 20 | var $body = $('html'); 21 | var w = $body.css('overflow', 'hidden').width(); 22 | $body.css('overflow','scroll'); 23 | w -= $body.width(); 24 | if (!w) w=$body.width()-$body[0].clientWidth; // IE in standards mode 25 | $body.css('overflow',''); 26 | $._scrollbarWidth = w; 27 | } 28 | return $._scrollbarWidth; 29 | }; 30 | 31 | })(jQuery); 32 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/js/tab/jquery.switchToClass.js: -------------------------------------------------------------------------------- 1 | (function($){ 2 | $.switchToClass = function(el, targetClass, options){ 3 | var base = this; 4 | 5 | base.$el = $(el); 6 | base.el = el; 7 | 8 | base.$el.data("switchToClass", base); 9 | 10 | base.init = function(){ 11 | if( typeof( targetClass ) === "undefined" || targetClass === null ) targetClass = ""; 12 | base.targetClass = targetClass; 13 | base.options = $.extend({},$.switchToClass.defaultOptions, options); 14 | }; 15 | 16 | base.init(); 17 | }; 18 | 19 | $.switchToClass.defaultOptions = { 20 | 21 | }; 22 | 23 | $.fn.switchToClass = function(targetClass, options){ 24 | return this.each(function(){ 25 | (new $.switchToClass(this,targetClass, options)); 26 | var oClass = $(this).data('switch-class'); 27 | if (oClass) { 28 | $(this).removeClass(oClass); 29 | } 30 | $(this).addClass(targetClass).data('switch-class', targetClass); 31 | }); 32 | }; 33 | 34 | })(jQuery); 35 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/js/tab/micro-templating.js: -------------------------------------------------------------------------------- 1 | // Simple JavaScript Templating 2 | // John Resig - http://ejohn.org/ - MIT Licensed 3 | (function(){ 4 | var cache = {}; 5 | 6 | this.tmpl = function tmpl(str, data){ 7 | // Figure out if we're getting a template, or if we need to 8 | // load the template - and be sure to cache the result. 9 | var fn = !/\W/.test(str) ? 10 | cache[str] = cache[str] || 11 | tmpl(document.getElementById(str).innerHTML) : 12 | 13 | // Generate a reusable function that will serve as a template 14 | // generator (and which will be cached). 15 | new Function("obj", 16 | "var p=[],print=function(){p.push.apply(p,arguments);};" + 17 | 18 | // Introduce the data as local variables using with(){} 19 | "with(obj){p.push('" + 20 | 21 | // Convert the template into pure JavaScript 22 | str 23 | .replace(/[\r\t\n]/g, " ") 24 | .split("<%").join("\t") 25 | .replace(/((^|%>)[^\t]*)'/g, "$1\r") 26 | .replace(/\t=(.*?)%>/g, "',$1,'") 27 | .split("\t").join("');") 28 | .split("%>").join("p.push('") 29 | .split("\r").join("\\'") 30 | + "');}return p.join('');"); 31 | 32 | // Provide some basic currying to the user 33 | return data ? fn( data ) : fn; 34 | }; 35 | })(); -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "background_page": "html/background.html", 3 | "content_scripts": [ { 4 | "css": [ "css/style.css", "css/boxy.css"], 5 | "exclude_globs": [ "*://chrome.google.com/webstore/*", "about:blank" ], 6 | "js": [ "js/jquery.js", "js/jquery.boxy.js", "js/tab/micro-templating.js", "js/tab/autoresize.js", "js/tab/autolink.js", "js/tab/assistant.js", "js/tab/follower.js", "js/sdptojingle.js", "js/tab/jingle.js", "js/tab/jquery.switchToClass.js", "js/tab/jquery.blockUI.js", "js/tab/jquery.scrollbarWidth.js", "js/gtalklet.js" ], 7 | "matches": [ "http://*/*", "https://*/*" ], 8 | "run_at": "document_idle" 9 | } ], 10 | "description": "Openfire Chat extension for Google Chrome", 11 | "icons": { 12 | "128": "icon128.gif", 13 | "16": "icon.gif", 14 | "48": "icon48.gif" 15 | }, 16 | "minimum_chrome_version": "19", 17 | "name": "OfChat", 18 | "options_page": "options/index.html", 19 | 20 | "page_action": { 21 | "default_title": "Openfire Chat" 22 | }, 23 | "permissions": ["experimental", "tabs", "notifications", "idle", "http://*/", "https://*/"], 24 | "version": "0.0.0.10" 25 | } 26 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/notification.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/notification.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ## v1.2 [ API CHANGE! ] 4 | * **Feature**: Added version number to README file 5 | * **Feature**: Added CHANGELOG 6 | * **Feature**: Added alignment support 7 | * **Change**: Removed the possibility to use objects to define options for elements other than popupButton 8 | * **Change**: Added support for option groups in popupButtons, changing the format when defining options as objects 9 | * **Change**: Changed the default value of "display" in the slider params from true to false 10 | * **Change**: Search doesn't change the DOM structure of settings any more 11 | * **Change**: i18n now returns the string you entered instead of undefined if no translation can be found 12 | * **Bug**: Fixed an issue were the search field had the wrong placeholder when "search" had no translation 13 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/README.md: -------------------------------------------------------------------------------- 1 | # [Fancy Settings 1.2](https://github.com/frankkohlhepp/fancy-settings) 2 | *Create fancy, chrome-look-alike settings for your Chrome or Safari extension in minutes!* 3 | 4 | ### Howto 5 | Welcome to Fancy Settings! Are you ready for tabs, groups, search, good style? 6 | Let's get started, it only takes a few minutes... 7 | 8 | [Getting started](https://github.com/frankkohlhepp/fancy-settings/wiki) 9 | [View Sample](http://frankkohlhepp.github.com/fancy-settings/) 10 | 11 | ### License 12 | Fancy Settings is licensed under the **LGPL 2.1**. 13 | For details see *LICENSE.txt* 14 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/resources/icon.drawit/Data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/options/fancy-settings/resources/icon.drawit/Data -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/resources/icon.drawit/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | fileVersion 6 | 2 7 | 8 | 9 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/resources/icon.drawit/QuickLook/Preview.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/options/fancy-settings/resources/icon.drawit/QuickLook/Preview.jpg -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/resources/icon.drawit/QuickLook/Thumbnail.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/options/fancy-settings/resources/icon.drawit/QuickLook/Thumbnail.jpg -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/source/css/main.css: -------------------------------------------------------------------------------- 1 | /* 2 | // Copyright (c) 2011 Frank Kohlhepp 3 | // https://github.com/frankkohlhepp/fancy-settings 4 | // License: LGPL v2.1 5 | */ 6 | .fancy { 7 | text-shadow: #F5F5F5 0 1px 0; 8 | } 9 | 10 | #sidebar { 11 | position: absolute; 12 | background-color: #EDEDED; 13 | background-image: linear-gradient(top, #EDEDED, #F5F5F5); 14 | background-image: -webkit-gradient( 15 | linear, 16 | left top, 17 | left 500, 18 | color-stop(0, #EDEDED), 19 | color-stop(1, #F5F5F5) 20 | ); 21 | background-image: -moz-linear-gradient( 22 | center top, 23 | #EDEDED 0%, 24 | #F5F5F5 100% 25 | ); 26 | background-image: -o-linear-gradient(top, #EDEDED, #F5F5F5); 27 | width: 219px; 28 | top: 0; 29 | left: 0; 30 | bottom: 0; 31 | border-right: 1px solid #C2C2C2; 32 | box-shadow: inset -8px 0 30px -30px black; 33 | } 34 | 35 | #icon { 36 | position: absolute; 37 | width: 30px; 38 | height: 30px; 39 | top: 12px; 40 | left: 12px; 41 | } 42 | 43 | #sidebar h1 { 44 | position: absolute; 45 | top: 13px; 46 | right: 25px; 47 | font-size: 26px; 48 | color: #707070; 49 | } 50 | 51 | #tab-container { 52 | position: absolute; 53 | top: 50px; 54 | left: 0; 55 | right: 0; 56 | bottom: 0; 57 | overflow-y: auto; 58 | overflow-x: hidden; 59 | text-align: right; 60 | } 61 | 62 | #tab-container .tab { 63 | height: 28px; 64 | padding-right: 25px; 65 | border-top: 1px solid transparent; 66 | border-bottom: 1px solid transparent; 67 | font-size: 12px; 68 | line-height: 28px; 69 | color: #808080; 70 | cursor: pointer; 71 | } 72 | 73 | #search-container { 74 | margin-top: 5px; 75 | margin-bottom: 5px; 76 | padding-right: 23px !important; 77 | cursor: default !important; 78 | } 79 | 80 | #search-container input { 81 | width: 130px; 82 | } 83 | 84 | #tab-container .tab.active, body.searching #search-container { 85 | background-color: #D4D4D4; 86 | border-color: #BFBFBF; 87 | color: black; 88 | text-shadow: #DBDBDB 0 1px 0; 89 | box-shadow: inset -12px 0 30px -30px black; 90 | } 91 | 92 | body.searching #tab-container .tab.active { 93 | background-color: transparent; 94 | border-color: transparent; 95 | color: #808080; 96 | text-shadow: inherit; 97 | box-shadow: none; 98 | } 99 | 100 | #content { 101 | position: absolute; 102 | top: 0; 103 | left: 220px; 104 | right: 0; 105 | bottom: 0; 106 | overflow: auto; 107 | } 108 | 109 | .tab-content { 110 | display: none; 111 | position: absolute; 112 | width: 840px; 113 | top: 0; 114 | left: 0; 115 | bottom: 0; 116 | padding: 20px; 117 | padding-top: 15px; 118 | } 119 | 120 | body.searching .tab-content { 121 | display: none !important; 122 | } 123 | 124 | body.searching #search-result-container { 125 | display: block !important; 126 | } 127 | 128 | body.measuring .tab-content, body.measuring #search-result-container { 129 | display: block !important; 130 | opacity: 0; 131 | overflow: hidden; 132 | } 133 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/source/css/setting.css: -------------------------------------------------------------------------------- 1 | /* 2 | // Copyright (c) 2011 Frank Kohlhepp 3 | // https://github.com/frankkohlhepp/fancy-settings 4 | // License: LGPL v2.1 5 | */ 6 | .tab-content h2 { 7 | margin: 0; 8 | padding-bottom: 5px; 9 | font-size: 26px; 10 | color: #707070; 11 | line-height: 1; 12 | } 13 | 14 | .setting.group { 15 | border-top: 1px solid #EEEEEE; 16 | margin-top: 10px; 17 | padding-top: 5px; 18 | padding-left: 2px; 19 | } 20 | 21 | .setting.group-name { 22 | width: 140px; 23 | padding: 0; 24 | font-size: 14px; 25 | font-weight: bold; 26 | vertical-align: top; 27 | } 28 | 29 | .setting.bundle { 30 | max-width: 600px; 31 | margin-bottom: 5px; 32 | } 33 | 34 | .setting.bundle.list-box { 35 | margin-bottom: 10px; 36 | } 37 | 38 | .setting.label.radio-buttons + .setting.container.radio-buttons { 39 | margin-top: 3px; 40 | } 41 | 42 | .setting.label, .setting.element-label { 43 | margin-right: 15px; 44 | font-size: 13px; 45 | font-weight: normal; 46 | } 47 | 48 | .setting.label.checkbox, .setting.element-label { 49 | margin-left: 5px; 50 | margin-right: 0; 51 | } 52 | 53 | .setting.label.checkbox { 54 | position: relative; 55 | top: 1px; 56 | } 57 | 58 | .setting.element.slider { 59 | position: relative; 60 | width: 150px; 61 | top: 4px; 62 | } 63 | 64 | .setting.element.list-box { 65 | display: block; 66 | height: 100px; 67 | width: 100%; 68 | } 69 | 70 | .setting.display.slider { 71 | margin-left: 5px; 72 | color: #666666; 73 | } 74 | 75 | #nothing-found { 76 | display: none; 77 | margin-top: 10px; 78 | font-size: 18px; 79 | font-weight: lighter; 80 | color: #999999; 81 | } 82 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/source/custom.css: -------------------------------------------------------------------------------- 1 | /* 2 | // Add your own style rules here, not in css/main.css 3 | // or css/setting.css for easy updating reasons. 4 | */ 5 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/source/i18n.js: -------------------------------------------------------------------------------- 1 | // SAMPLE 2 | this.i18n = { 3 | "settings": { 4 | "en": "Settings", 5 | "de": "Optionen" 6 | }, 7 | "search": { 8 | "en": "Search", 9 | "de": "Suche" 10 | }, 11 | "nothing-found": { 12 | "en": "No matches were found.", 13 | "de": "Keine Übereinstimmungen gefunden." 14 | }, 15 | 16 | 17 | 18 | "information": { 19 | "en": "Information", 20 | "de": "Information" 21 | }, 22 | "login": { 23 | "en": "Login", 24 | "de": "Anmeldung" 25 | }, 26 | "username": { 27 | "en": "Username:", 28 | "de": "Benutzername:" 29 | }, 30 | "password": { 31 | "en": "Password:", 32 | "de": "Passwort:" 33 | }, 34 | "x-characters": { 35 | "en": "6 - 12 characters", 36 | "de": "6 - 12 Zeichen" 37 | }, 38 | "x-characters-pw": { 39 | "en": "10 - 18 characters", 40 | "de": "10 - 18 Zeichen" 41 | }, 42 | "description": { 43 | "en": "This is a description. You can write any text inside of this.
\ 44 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut\ 45 | labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores\ 46 | et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem\ 47 | ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et\ 48 | dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.\ 49 | Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.", 50 | 51 | "de": "Das ist eine Beschreibung. Du kannst hier beliebigen Text einfügen.
\ 52 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut\ 53 | labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores\ 54 | et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem\ 55 | ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et\ 56 | dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.\ 57 | Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet." 58 | }, 59 | "logout": { 60 | "en": "Logout", 61 | "de": "Abmeldung" 62 | }, 63 | "enable": { 64 | "en": "Enable", 65 | "de": "Aktivieren" 66 | }, 67 | "disconnect": { 68 | "en": "Disconnect:", 69 | "de": "Trennen:" 70 | } 71 | }; 72 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/source/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/options/fancy-settings/source/icon.png -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/source/index.html: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 40 |
41 |
42 |

43 |
44 |
45 | 46 | 47 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/source/js/classes/search.js: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2011 Frank Kohlhepp 3 | // https://github.com/frankkohlhepp/fancy-settings 4 | // License: LGPL v2.1 5 | // 6 | (function () { 7 | this.Search = new Class({ 8 | "index": [], 9 | "groups": {}, 10 | 11 | "initialize": function (search, searchResultContainer) { 12 | var setting, 13 | find; 14 | 15 | this.search = search; 16 | this.searchResultContainer = searchResultContainer; 17 | this.setting = new Setting(new Element("div")); 18 | 19 | // Create setting for message "nothing found" 20 | setting = new Setting(this.searchResultContainer); 21 | this.nothingFound = setting.create({ 22 | "type": "description", 23 | "text": (i18n.get("nothing-found") || "No matches were found.") 24 | }); 25 | this.nothingFound.bundle.set("id", "nothing-found"); 26 | 27 | // Create event handlers 28 | find = (function (event) { 29 | this.find(event.target.get("value")); 30 | }).bind(this); 31 | 32 | this.search.addEvent("keyup", (function (event) { 33 | if (event.key === "esc") { 34 | this.reset(); 35 | } else { 36 | find(event); 37 | } 38 | }).bind(this)); 39 | this.search.addEventListener("search", find, false); 40 | }, 41 | 42 | "bind": function (tab) { 43 | tab.addEvent("click", this.reset.bind(this)); 44 | }, 45 | 46 | "add": function (setting) { 47 | var searchSetting = this.setting.create(setting.params); 48 | setting.search = searchSetting; 49 | searchSetting.original = setting; 50 | this.index.push(searchSetting); 51 | 52 | setting.addEvent("action", function (value, stopPropagation) { 53 | if (searchSetting.set !== undefined && stopPropagation !== true) { 54 | searchSetting.set(value, true); 55 | } 56 | }); 57 | searchSetting.addEvent("action", function (value) { 58 | if (setting.set !== undefined) { 59 | setting.set(value, true); 60 | } 61 | setting.fireEvent("action", [value, true]); 62 | }); 63 | }, 64 | 65 | "find": function (searchString) { 66 | // Exit search mode 67 | if (searchString.trim() === "") { 68 | document.body.removeClass("searching"); 69 | return; 70 | } 71 | 72 | // Or enter search mode 73 | this.index.each(function (setting) { setting.bundle.dispose(); }); 74 | Object.each(this.groups, function (group) { group.dispose(); }); 75 | document.body.addClass("searching"); 76 | 77 | // Filter settings 78 | var result = this.index.filter(function (setting) { 79 | if (setting.params.searchString.contains(searchString.trim().toLowerCase())) { 80 | return true; 81 | } 82 | }); 83 | 84 | // Display settings 85 | result.each((function (setting) { 86 | var group, 87 | row; 88 | 89 | // Create group if it doesn't exist already 90 | if (this.groups[setting.params.group] === undefined) { 91 | this.groups[setting.params.group] = (new Element("table", { 92 | "class": "setting group" 93 | })).inject(this.searchResultContainer); 94 | 95 | group = this.groups[setting.params.group]; 96 | row = (new Element("tr")).inject(group); 97 | 98 | (new Element("td", { 99 | "class": "setting group-name", 100 | "text": setting.params.group 101 | })).inject(row); 102 | 103 | group.content = (new Element("td", { 104 | "class": "setting group-content" 105 | })).inject(row); 106 | } else { 107 | group = this.groups[setting.params.group].inject(this.searchResultContainer); 108 | } 109 | 110 | setting.bundle.inject(group.content); 111 | }).bind(this)); 112 | 113 | if (result.length === 0) { 114 | this.nothingFound.bundle.addClass("show"); 115 | } else { 116 | this.nothingFound.bundle.removeClass("show"); 117 | } 118 | }, 119 | 120 | "reset": function () { 121 | this.search.set("value", ""); 122 | this.search.blur(); 123 | this.find(""); 124 | } 125 | }); 126 | }()); 127 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/source/js/classes/tab.js: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2011 Frank Kohlhepp 3 | // https://github.com/frankkohlhepp/fancy-settings 4 | // License: LGPL v2.1 5 | // 6 | (function () { 7 | var Bundle = new Class({ 8 | "initialize": function (creator) { 9 | this.creator = creator; 10 | 11 | // Create DOM elements 12 | this.tab = new Element("div", {"class": "tab"}); 13 | this.content = new Element("div", {"class": "tab-content"}); 14 | 15 | // Create event handlers 16 | this.tab.addEvent("click", this.activate.bind(this)); 17 | }, 18 | 19 | "activate": function () { 20 | if (this.creator.activeBundle && this.creator.activeBundle !== this) { 21 | this.creator.activeBundle.deactivate(); 22 | } 23 | this.tab.addClass("active"); 24 | this.content.addClass("show"); 25 | this.creator.activeBundle = this; 26 | }, 27 | 28 | "deactivate": function () { 29 | this.tab.removeClass("active"); 30 | this.content.removeClass("show"); 31 | this.creator.activeBundle = null; 32 | } 33 | }); 34 | 35 | this.Tab = new Class({ 36 | "activeBundle": null, 37 | 38 | "initialize": function (tabContainer, tabContentContainer) { 39 | this.tabContainer = tabContainer; 40 | this.tabContentContainer = tabContentContainer; 41 | }, 42 | 43 | "create": function () { 44 | var bundle = new Bundle(this); 45 | bundle.tab.inject(this.tabContainer); 46 | bundle.content.inject(this.tabContentContainer); 47 | if (!this.activeBundle) { bundle.activate(); } 48 | return bundle; 49 | } 50 | }); 51 | }()); 52 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/source/js/i18n.js: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2011 Frank Kohlhepp 3 | // https://github.com/frankkohlhepp/fancy-settings 4 | // License: LGPL v2.1 5 | // 6 | (function () { 7 | var lang = navigator.language.split("-")[0]; 8 | if (this.i18n === undefined) { this.i18n = {}; } 9 | this.i18n.get = function (value) { 10 | if (value === "lang") { 11 | return lang; 12 | } 13 | 14 | if (this.hasOwnProperty(value)) { 15 | value = this[value]; 16 | if (value.hasOwnProperty(lang)) { 17 | return value[lang]; 18 | } else if (value.hasOwnProperty("en")) { 19 | return value["en"]; 20 | } else { 21 | return Object.values(value)[0]; 22 | } 23 | } else { 24 | return value; 25 | } 26 | }; 27 | }()); 28 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/source/lib/store.js: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2011 Frank Kohlhepp 3 | // https://github.com/frankkohlhepp/store-js 4 | // License: MIT-license 5 | // 6 | (function () { 7 | var Store = this.Store = function (name, defaults) { 8 | var key; 9 | this.name = name; 10 | 11 | if (defaults !== undefined) { 12 | for (key in defaults) { 13 | if (defaults.hasOwnProperty(key) && this.get(key) === undefined) { 14 | this.set(key, defaults[key]); 15 | } 16 | } 17 | } 18 | }; 19 | 20 | Store.prototype.get = function (name) { 21 | name = "store." + this.name + "." + name; 22 | if (localStorage.getItem(name) === null) { return undefined; } 23 | try { 24 | return JSON.parse(localStorage.getItem(name)); 25 | } catch (e) { 26 | return null; 27 | } 28 | }; 29 | 30 | Store.prototype.set = function (name, value) { 31 | if (value === undefined) { 32 | this.remove(name); 33 | } else { 34 | if (typeof value === "function") { 35 | value = null; 36 | } else { 37 | try { 38 | value = JSON.stringify(value); 39 | } catch (e) { 40 | value = null; 41 | } 42 | } 43 | 44 | localStorage.setItem("store." + this.name + "." + name, value); 45 | } 46 | 47 | return this; 48 | }; 49 | 50 | Store.prototype.remove = function (name) { 51 | localStorage.removeItem("store." + this.name + "." + name); 52 | return this; 53 | }; 54 | 55 | Store.prototype.removeAll = function () { 56 | var name, 57 | i; 58 | 59 | name = "store." + this.name + "."; 60 | for (i = (localStorage.length - 1); i >= 0; i--) { 61 | if (localStorage.key(i).substring(0, name.length) === name) { 62 | localStorage.removeItem(localStorage.key(i)); 63 | } 64 | } 65 | 66 | return this; 67 | }; 68 | 69 | Store.prototype.toObject = function () { 70 | var values, 71 | name, 72 | i, 73 | key, 74 | value; 75 | 76 | values = {}; 77 | name = "store." + this.name + "."; 78 | for (i = (localStorage.length - 1); i >= 0; i--) { 79 | if (localStorage.key(i).substring(0, name.length) === name) { 80 | key = localStorage.key(i).substring(name.length); 81 | value = this.get(key); 82 | if (value !== undefined) { values[key] = value; } 83 | } 84 | } 85 | 86 | return values; 87 | }; 88 | 89 | Store.prototype.fromObject = function (values, merge) { 90 | if (merge !== true) { this.removeAll(); } 91 | for (var key in values) { 92 | if (values.hasOwnProperty(key)) { 93 | this.set(key, values[key]); 94 | } 95 | } 96 | 97 | return this; 98 | }; 99 | }()); 100 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/source/manifest.js: -------------------------------------------------------------------------------- 1 | // SAMPLE 2 | this.manifest = { 3 | "name": "My Extension", 4 | "icon": "icon.png", 5 | "settings": [ 6 | { 7 | "tab": i18n.get("information"), 8 | "group": i18n.get("login"), 9 | "name": "username", 10 | "type": "text", 11 | "label": i18n.get("username"), 12 | "text": i18n.get("x-characters") 13 | }, 14 | { 15 | "tab": i18n.get("information"), 16 | "group": i18n.get("login"), 17 | "name": "password", 18 | "type": "text", 19 | "label": i18n.get("password"), 20 | "text": i18n.get("x-characters-pw"), 21 | "masked": true 22 | }, 23 | { 24 | "tab": i18n.get("information"), 25 | "group": i18n.get("login"), 26 | "name": "myDescription", 27 | "type": "description", 28 | "text": i18n.get("description") 29 | }, 30 | { 31 | "tab": i18n.get("information"), 32 | "group": i18n.get("logout"), 33 | "name": "myCheckbox", 34 | "type": "checkbox", 35 | "label": i18n.get("enable") 36 | }, 37 | { 38 | "tab": i18n.get("information"), 39 | "group": i18n.get("logout"), 40 | "name": "myButton", 41 | "type": "button", 42 | "label": i18n.get("disconnect"), 43 | "text": i18n.get("logout") 44 | }, 45 | { 46 | "tab": "Details", 47 | "group": "Sound", 48 | "name": "noti_volume", 49 | "type": "slider", 50 | "label": "Notification volume:", 51 | "max": 1, 52 | "min": 0, 53 | "step": 0.01, 54 | "display": true, 55 | "displayModifier": function (value) { 56 | return (value * 100).floor() + "%"; 57 | } 58 | }, 59 | { 60 | "tab": "Details", 61 | "group": "Sound", 62 | "name": "sound_volume", 63 | "type": "slider", 64 | "label": "Sound volume:", 65 | "max": 100, 66 | "min": 0, 67 | "step": 1, 68 | "display": true, 69 | "displayModifier": function (value) { 70 | return value + "%"; 71 | } 72 | }, 73 | { 74 | "tab": "Details", 75 | "group": "Food", 76 | "name": "myPopupButton", 77 | "type": "popupButton", 78 | "label": "Soup 1 should be:", 79 | "options": { 80 | "groups": [ 81 | "Hot", "Cold", 82 | ], 83 | "values": [ 84 | { 85 | "value": "hot", 86 | "text": "Very hot", 87 | "group": "Hot", 88 | }, 89 | { 90 | "value": "Medium", 91 | "group": 1, 92 | }, 93 | { 94 | "value": "Cold", 95 | "group": 2, 96 | }, 97 | ["Non-existing"] 98 | ], 99 | }, 100 | }, 101 | { 102 | "tab": "Details", 103 | "group": "Food", 104 | "name": "myListBox", 105 | "type": "listBox", 106 | "label": "Soup 2 should be:", 107 | "options": [ 108 | ["hot", "Hot and yummy"], 109 | ["cold"] 110 | ] 111 | }, 112 | { 113 | "tab": "Details", 114 | "group": "Food", 115 | "name": "myRadioButtons", 116 | "type": "radioButtons", 117 | "label": "Soup 3 should be:", 118 | "options": [ 119 | ["hot", "Hot and yummy"], 120 | ["cold"] 121 | ] 122 | } 123 | ], 124 | "alignment": [ 125 | [ 126 | "username", 127 | "password" 128 | ], 129 | [ 130 | "noti_volume", 131 | "sound_volume" 132 | ] 133 | ] 134 | }; 135 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/fancy-settings/source/settings.js: -------------------------------------------------------------------------------- 1 | window.addEvent("domready", function () { 2 | // Option 1: Use the manifest: 3 | new FancySettings.initWithManifest(function (settings) { 4 | settings.manifest.myButton.addEvent("action", function () { 5 | alert("You clicked me!"); 6 | }); 7 | }); 8 | 9 | // Option 2: Do everything manually: 10 | /* 11 | var settings = new FancySettings("My Extension", "icon.png"); 12 | 13 | var username = settings.create({ 14 | "tab": i18n.get("information"), 15 | "group": i18n.get("login"), 16 | "name": "username", 17 | "type": "text", 18 | "label": i18n.get("username"), 19 | "text": i18n.get("x-characters") 20 | }); 21 | 22 | var password = settings.create({ 23 | "tab": i18n.get("information"), 24 | "group": i18n.get("login"), 25 | "name": "password", 26 | "type": "text", 27 | "label": i18n.get("password"), 28 | "text": i18n.get("x-characters-pw"), 29 | "masked": true 30 | }); 31 | 32 | var myDescription = settings.create({ 33 | "tab": i18n.get("information"), 34 | "group": i18n.get("login"), 35 | "name": "myDescription", 36 | "type": "description", 37 | "text": i18n.get("description") 38 | }); 39 | 40 | var myButton = settings.create({ 41 | "tab": "Information", 42 | "group": "Logout", 43 | "name": "myButton", 44 | "type": "button", 45 | "label": "Disconnect:", 46 | "text": "Logout" 47 | }); 48 | 49 | // ... 50 | 51 | myButton.addEvent("action", function () { 52 | alert("You clicked me!"); 53 | }); 54 | 55 | settings.align([ 56 | username, 57 | password 58 | ]); 59 | */ 60 | }); 61 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/i18n.js: -------------------------------------------------------------------------------- 1 | // SAMPLE 2 | this.i18n = { 3 | "settings": { 4 | "en": "Options", 5 | } 6 | }; 7 | 8 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/icon.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/options/icon.gif -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/openfire-websockets/src/ofchat/options/icon.png -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/index.html: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 49 |
50 |
51 |

Search

52 |
53 |
54 | 55 | 56 | 57 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/options/settings.js: -------------------------------------------------------------------------------- 1 | window.addEvent("domready", function () { 2 | 3 | new FancySettings.initWithManifest(function (settings) { 4 | var toggleBoshService = function(effect) { 5 | var value = settings.manifest.custom_bosh_service.get(); 6 | jQuery("#bosh_service").hide(); 7 | }; 8 | 9 | var $sensitiveElements = jQuery('.tab-content.show input:not(#signout), .tab-content.show select, .tab-content.show checkbox'); 10 | var $signoutGroup = jQuery('#signout').closest('.group'); 11 | var toggleProtection = function() { 12 | if (background.secretary.active) { 13 | $sensitiveElements.attr('disabled', 'disabled'); 14 | $signoutGroup.show(); 15 | } else { 16 | $sensitiveElements.removeAttr('disabled'); 17 | $signoutGroup.hide(); 18 | } 19 | }; 20 | 21 | var toggleJid = function() { 22 | 23 | var value = settings.manifest.jid.get(); 24 | if (value) { 25 | jQuery('#jid').removeClass('error'); 26 | } else { 27 | jQuery('#jid').addClass('error'); 28 | } 29 | }; 30 | var togglePassword = function() { 31 | var value = settings.manifest.password.get(); 32 | if (value) { 33 | jQuery('#password').removeClass('error'); 34 | } else { 35 | jQuery('#password').addClass('error'); 36 | } 37 | }; 38 | 39 | var background = chrome.extension.getBackgroundPage(); 40 | 41 | toggleBoshService(); 42 | toggleProtection(); 43 | toggleJid(); 44 | togglePassword(); 45 | 46 | settings.manifest.custom_bosh_service.addEvent("action", function() { 47 | var value = settings.manifest.custom_bosh_service.get(); 48 | // check if valid url 49 | var exp = /(\b(https?):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/i; 50 | if (value) { 51 | if (value.match(exp)) { 52 | jQuery('#custom_bosh_service').removeClass('error'); 53 | } else { 54 | jQuery('#custom_bosh_service').addClass('error'); 55 | } 56 | } else { 57 | jQuery('#custom_bosh_service').removeClass('error'); 58 | } 59 | background.boss.optionUpdated("CUSTOM_BOSH_SERVICE", value); 60 | }); 61 | 62 | jQuery('#custom_bosh_service').bind('blur',function() { 63 | var value = settings.manifest.custom_bosh_service.get(); 64 | 65 | }).bind('focus', function() { 66 | var value = settings.manifest.custom_bosh_service.get(); 67 | }); 68 | 69 | settings.manifest.jid.addEvent("action", function() { 70 | toggleJid(); 71 | background.boss.optionUpdated("JID", settings.manifest.jid.get()); 72 | }); 73 | 74 | settings.manifest.password.addEvent("action", function() { 75 | togglePassword(); 76 | background.boss.optionUpdated("PASSWORD", settings.manifest.password.get()); 77 | }); 78 | 79 | settings.manifest.align.addEvent("action", function() { 80 | background.boss.optionUpdated("ALIGN", settings.manifest.align.get()); 81 | }); 82 | 83 | settings.manifest.history_threads.addEvent("action", function() { 84 | background.boss.optionUpdated("HISTORY_THREADS", settings.manifest.history_threads.get()); 85 | }); 86 | 87 | settings.manifest.use_websockets.addEvent("action", function() { 88 | background.boss.optionUpdated("USE_WEBSOCKETS", settings.manifest.use_websockets.get()); 89 | }); 90 | 91 | settings.manifest.desktop_notification.addEvent("action", function() { 92 | background.boss.optionUpdated("DESKTOP_NOTIFICATION", settings.manifest.desktop_notification.get()); 93 | }); 94 | 95 | settings.manifest.signout.addEvent("action", function() { 96 | background.boss.signout(); 97 | toggleProtection(); 98 | }); 99 | 100 | settings.manifest.excludes.addEvent("action", function() { 101 | background.boss.optionUpdated("EXCLUDES", settings.manifest.excludes.get()); 102 | }); 103 | 104 | setInterval(toggleProtection, 2000); 105 | }); 106 | 107 | }); 108 | -------------------------------------------------------------------------------- /openfire-websockets/src/ofchat/popup.html: -------------------------------------------------------------------------------- 1 | 15 | 16 | 20 | 21 | 22 | OfChat - Openfire Web Client 23 | 24 | -------------------------------------------------------------------------------- /websockets.war: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gunblues/strophe-openfire-websocket/eba45f8848217a0c138c8614ba1dbfc16fee823f/websockets.war --------------------------------------------------------------------------------