xmppify 0.0.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +17 -0
  3. data/Gemfile +4 -0
  4. data/LICENSE.txt +22 -0
  5. data/README.md +29 -0
  6. data/Rakefile +1 -0
  7. data/app/assets/javascripts/xmpp/index.js +0 -0
  8. data/app/assets/javascripts/xmpp/scripts/checkplayer.js +12 -0
  9. data/app/assets/javascripts/xmpp/scripts/crossdomain.xml +7 -0
  10. data/app/assets/javascripts/xmpp/scripts/flXHR.js +2 -0
  11. data/app/assets/javascripts/xmpp/scripts/flXHR.swf +0 -0
  12. data/app/assets/javascripts/xmpp/scripts/flXHR.vbs +44 -0
  13. data/app/assets/javascripts/xmpp/scripts/flensed.js +12 -0
  14. data/app/assets/javascripts/xmpp/scripts/strophe.flxhr.js +31 -0
  15. data/app/assets/javascripts/xmpp/scripts/strophe.js +3538 -0
  16. data/app/assets/javascripts/xmpp/scripts/swfobject.js +5 -0
  17. data/app/assets/javascripts/xmpp/scripts/updateplayer.swf +0 -0
  18. data/app/assets/javascripts/xmpp/scripts/xmpp.js.coffee +386 -0
  19. data/app/assets/javascripts/xmpp/strophejs-plugins/LICENSE.txt +19 -0
  20. data/app/assets/javascripts/xmpp/strophejs-plugins/README.markdown +95 -0
  21. data/app/assets/javascripts/xmpp/strophejs-plugins/archive/README.markdown +14 -0
  22. data/app/assets/javascripts/xmpp/strophejs-plugins/archive/iso8601_support.js +32 -0
  23. data/app/assets/javascripts/xmpp/strophejs-plugins/archive/strophe.archive.js +88 -0
  24. data/app/assets/javascripts/xmpp/strophejs-plugins/caps/README.markdown +53 -0
  25. data/app/assets/javascripts/xmpp/strophejs-plugins/caps/sha1.js +202 -0
  26. data/app/assets/javascripts/xmpp/strophejs-plugins/caps/strophe.CAPS.coffee +153 -0
  27. data/app/assets/javascripts/xmpp/strophejs-plugins/caps/strophe.CAPS.js +88 -0
  28. data/app/assets/javascripts/xmpp/strophejs-plugins/caps/strophe.caps.jsonly.js +240 -0
  29. data/app/assets/javascripts/xmpp/strophejs-plugins/chatstates/strophe.chatstates.js +80 -0
  30. data/app/assets/javascripts/xmpp/strophejs-plugins/cmds/README.markdown +47 -0
  31. data/app/assets/javascripts/xmpp/strophejs-plugins/cmds/spec/GetUrlComamndSpec.js +66 -0
  32. data/app/assets/javascripts/xmpp/strophejs-plugins/cmds/spec/strophe.cmds.spec.coffee +145 -0
  33. data/app/assets/javascripts/xmpp/strophejs-plugins/cmds/spec/support/jasmine.json +16 -0
  34. data/app/assets/javascripts/xmpp/strophejs-plugins/cmds/src/strophe.cmds.coffee +265 -0
  35. data/app/assets/javascripts/xmpp/strophejs-plugins/cmds/src/strophe.cmds.js +403 -0
  36. data/app/assets/javascripts/xmpp/strophejs-plugins/dataforms/README.markdown +82 -0
  37. data/app/assets/javascripts/xmpp/strophejs-plugins/dataforms/spec/strophe.x.coffee +715 -0
  38. data/app/assets/javascripts/xmpp/strophejs-plugins/dataforms/src/strophe.x.coffee +443 -0
  39. data/app/assets/javascripts/xmpp/strophejs-plugins/dataforms/src/strophe.x.js +854 -0
  40. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/.gitignore +1 -0
  41. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/README.markdown +0 -0
  42. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/convert.js +13 -0
  43. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/jasmine.json +11 -0
  44. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/lib/strophe.disco.js +137 -0
  45. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/public/javascript/strophe.disco.js +137 -0
  46. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/01_querying_information.xml +6 -0
  47. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/02_result_set_for_information_request.xml +22 -0
  48. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/03_target_entity_does_not_exist.xml +10 -0
  49. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/04_service_unavailable.xml +11 -0
  50. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/09_querying_specific_jid_and_node_combination.xml +7 -0
  51. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/10_jid_and_node_result.xml +12 -0
  52. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/11_requesting_all_items.xml +6 -0
  53. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/12_result_set_for_all_items.xml +23 -0
  54. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/13_empty_result_set.xml +7 -0
  55. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/17_service_returns_nodes.xml +16 -0
  56. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/18_requesting_further_nodes.xml +7 -0
  57. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/24_jid_and_node_error.xml +11 -0
  58. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/DiscoNodeSpec.js +50 -0
  59. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/SpecHelper.js +51 -0
  60. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/Stanzas.js +0 -0
  61. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/strophe.disco.spec.helper.js +54 -0
  62. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/strophe.disco.spec.js +0 -0
  63. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/spec/support/jasmine.json +13 -0
  64. data/app/assets/javascripts/xmpp/strophejs-plugins/disco/strophe.disco.js +232 -0
  65. data/app/assets/javascripts/xmpp/strophejs-plugins/epic/public/javascript/jquery.epic.js +61 -0
  66. data/app/assets/javascripts/xmpp/strophejs-plugins/epic/spec/SpecHelper.js +9 -0
  67. data/app/assets/javascripts/xmpp/strophejs-plugins/epic/spec/jquery.epic.js +39 -0
  68. data/app/assets/javascripts/xmpp/strophejs-plugins/epic/spec/support/jasmine.json +22 -0
  69. data/app/assets/javascripts/xmpp/strophejs-plugins/iexdomain/iexdomain.js +36 -0
  70. data/app/assets/javascripts/xmpp/strophejs-plugins/joap/README.markdown +117 -0
  71. data/app/assets/javascripts/xmpp/strophejs-plugins/joap/buster.js +23 -0
  72. data/app/assets/javascripts/xmpp/strophejs-plugins/joap/jid.coffee +64 -0
  73. data/app/assets/javascripts/xmpp/strophejs-plugins/joap/jid.js +92 -0
  74. data/app/assets/javascripts/xmpp/strophejs-plugins/joap/spec/browserSetup.coffee +1 -0
  75. data/app/assets/javascripts/xmpp/strophejs-plugins/joap/spec/jid.spec.coffee +96 -0
  76. data/app/assets/javascripts/xmpp/strophejs-plugins/joap/spec/strophe.joap.spec.coffee +461 -0
  77. data/app/assets/javascripts/xmpp/strophejs-plugins/joap/strophe.joap.coffee +304 -0
  78. data/app/assets/javascripts/xmpp/strophejs-plugins/joap/strophe.joap.js +522 -0
  79. data/app/assets/javascripts/xmpp/strophejs-plugins/mam/LICENSE.txt +19 -0
  80. data/app/assets/javascripts/xmpp/strophejs-plugins/mam/README.markdown +52 -0
  81. data/app/assets/javascripts/xmpp/strophejs-plugins/mam/strophe.mam.js +62 -0
  82. data/app/assets/javascripts/xmpp/strophejs-plugins/muc/LICENSE.txt +20 -0
  83. data/app/assets/javascripts/xmpp/strophejs-plugins/muc/strophe.muc.js +1003 -0
  84. data/app/assets/javascripts/xmpp/strophejs-plugins/ping/README.markdown +28 -0
  85. data/app/assets/javascripts/xmpp/strophejs-plugins/ping/strophe.ping.js +68 -0
  86. data/app/assets/javascripts/xmpp/strophejs-plugins/private/README.markdown +16 -0
  87. data/app/assets/javascripts/xmpp/strophejs-plugins/private/strophe.private.js +192 -0
  88. data/app/assets/javascripts/xmpp/strophejs-plugins/pubsub/strophe.pubsub.js +555 -0
  89. data/app/assets/javascripts/xmpp/strophejs-plugins/receipts/strophe.receipts.js +155 -0
  90. data/app/assets/javascripts/xmpp/strophejs-plugins/register/README.markdown +44 -0
  91. data/app/assets/javascripts/xmpp/strophejs-plugins/register/strophe.register.js +431 -0
  92. data/app/assets/javascripts/xmpp/strophejs-plugins/roster/public/javascript/strophe.roster.js +40 -0
  93. data/app/assets/javascripts/xmpp/strophejs-plugins/roster/spec/strophe.roster.spec.js +65 -0
  94. data/app/assets/javascripts/xmpp/strophejs-plugins/roster/spec/support/jasmine.json +15 -0
  95. data/app/assets/javascripts/xmpp/strophejs-plugins/roster/strophe.roster.js +438 -0
  96. data/app/assets/javascripts/xmpp/strophejs-plugins/rpc/.gitignore +6 -0
  97. data/app/assets/javascripts/xmpp/strophejs-plugins/rpc/README.md +113 -0
  98. data/app/assets/javascripts/xmpp/strophejs-plugins/rpc/buster.js +11 -0
  99. data/app/assets/javascripts/xmpp/strophejs-plugins/rpc/lib/strophe.js +4198 -0
  100. data/app/assets/javascripts/xmpp/strophejs-plugins/rpc/spec/strophe.rpc.spec.helper.js +38 -0
  101. data/app/assets/javascripts/xmpp/strophejs-plugins/rpc/spec/strophe.rpc.spec.js +262 -0
  102. data/app/assets/javascripts/xmpp/strophejs-plugins/rpc/strophe.rpc.js +464 -0
  103. data/app/assets/javascripts/xmpp/strophejs-plugins/rsm/strophe.rsm.js +52 -0
  104. data/app/assets/javascripts/xmpp/strophejs-plugins/serverdate/strophe.serverdate.js +58 -0
  105. data/app/assets/javascripts/xmpp/strophejs-plugins/vcard/examples/index.html +17 -0
  106. data/app/assets/javascripts/xmpp/strophejs-plugins/vcard/examples/strophevcard.js +0 -0
  107. data/app/assets/javascripts/xmpp/strophejs-plugins/vcard/strophe.vcard.coffee +44 -0
  108. data/app/assets/javascripts/xmpp/strophejs-plugins/vcard/strophe.vcard.js +66 -0
  109. data/app/assets/stylesheets/xmpp/index.css +0 -0
  110. data/app/controllers/omniauth_callbacks_controller.rb +15 -0
  111. data/app/controllers/ruby_bosh.rb +221 -0
  112. data/app/models/identity.rb +3 -0
  113. data/app/models/user.rb +40 -0
  114. data/bin/rails +8 -0
  115. data/db/migrate/20140329065635_create_users.rb +10 -0
  116. data/db/migrate/20140329070238_create_identities.rb +11 -0
  117. data/lib/xmppify/version.rb +3 -0
  118. data/lib/xmppify.rb +6 -0
  119. data/xmppify.gemspec +23 -0
  120. metadata +197 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: f56cec8e851a8b6caf67db52a459bfad5f5f442b
4
+ data.tar.gz: 74d172a4059de199e11e6862284a6071c3a1d612
5
+ SHA512:
6
+ metadata.gz: 406536d7ce71b6abe236f74adc8ea6f7454e454ba5db590c5fc1616485f5cb4eef2b523de01a5366610c9e2718a44a43c3fdf890718ec76fadb7e373d3d07779
7
+ data.tar.gz: 395b0e6b434da064f810ac0c4ac43ee5f2602d6c23abdce2a7ed226b88b4a3b730dcc99ec00178755d4866c055adbf954193f105986c65c21dcf80e0f6e5f8d6
data/.gitignore ADDED
@@ -0,0 +1,17 @@
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ .yardoc
6
+ Gemfile.lock
7
+ InstalledFiles
8
+ _yardoc
9
+ coverage
10
+ doc/
11
+ lib/bundler/man
12
+ pkg
13
+ rdoc
14
+ spec/reports
15
+ test/tmp
16
+ test/version_tmp
17
+ tmp
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in xmppify.gemspec
4
+ gemspec
data/LICENSE.txt ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2014 Charlie
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,29 @@
1
+ # Xmppify
2
+
3
+ TODO: Write a gem description
4
+
5
+ ## Installation
6
+
7
+ Add this line to your application's Gemfile:
8
+
9
+ gem 'xmppify'
10
+
11
+ And then execute:
12
+
13
+ $ bundle
14
+
15
+ Or install it yourself as:
16
+
17
+ $ gem install xmppify
18
+
19
+ ## Usage
20
+
21
+ TODO: Write usage instructions here
22
+
23
+ ## Contributing
24
+
25
+ 1. Fork it ( http://github.com/<my-github-username>/xmppify/fork )
26
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
27
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
28
+ 4. Push to the branch (`git push origin my-new-feature`)
29
+ 5. Create new Pull Request
data/Rakefile ADDED
@@ -0,0 +1 @@
1
+ require "bundler/gem_tasks"
File without changes
@@ -0,0 +1,12 @@
1
+ /* CheckPlayer 1.0.2 <http://checkplayer.flensed.com/>
2
+ Copyright (c) 2008 Kyle Simpson, Getify Solutions, Inc.
3
+ This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
4
+
5
+ ====================================================================================================
6
+ Portions of this code were extracted and/or derived from:
7
+
8
+ SWFObject v2.1 & 2.2a8 <http://code.google.com/p/swfobject/>
9
+ Copyright (c) 2007-2008 Geoff Stearns, Michael Williams, and Bobby van der Sluis
10
+ This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
11
+ */
12
+ (function(R){var E=R,V=R.document,N="undefined",G=true,X=false,W="",H="object",O="function",T="string",M="div",D="onunload",J="none",U=null,P=null,I=null,L=null,K="flensed.js",F="checkplayer.js",B="swfobject.js",C=R.setTimeout,A=R.clearTimeout,S=R.setInterval,Q=R.clearInterval;if(typeof R.flensed===N){R.flensed={}}if(typeof R.flensed.checkplayer!==N){return }P=R.flensed;C(function(){var Y=X,i=V.getElementsByTagName("script"),d=i.length;try{P.base_path.toLowerCase();Y=G}catch(b){P.base_path=""}function g(o,n,p){for(var m=0;m<d;m++){if(typeof i[m].src!==N){if(i[m].src.indexOf(o)>=0){break}}}var l=V.createElement("script");l.setAttribute("src",P.base_path+o);if(typeof n!==N){l.setAttribute("type",n)}if(typeof p!==N){l.setAttribute("language",p)}V.getElementsByTagName("head")[0].appendChild(l)}if((typeof i!==N)&&(i!==null)){if(!Y){var j=0;for(var c=0;c<d;c++){if(typeof i[c].src!==N){if(((j=i[c].src.indexOf(K))>=0)||((j=i[c].src.indexOf(F))>=0)){P.base_path=i[c].src.substr(0,j);break}}}}}try{R.swfobject.getObjectById("a")}catch(h){g(B,"text/javascript")}try{P.ua.pv.join(".")}catch(f){g(K,"text/javascript")}function Z(){A(a);try{E.detachEvent(D,arguments.callee)}catch(k){}}try{E.attachEvent(D,Z)}catch(e){}var a=C(function(){Z();try{R.swfobject.getObjectById("a");P.ua.pv.join(".")}catch(k){throw new R.Error("CheckPlayer dependencies failed to load.")}},20000)},0);P.checkplayer=function(x,AI,o,AB){if(typeof I._ins!==N){if(I._ins.ready()){setTimeout(function(){AI(I._ins)},0)}return I._ins}var a="6.0.65",z=[],i=null,f=X,g=null,AK=null,s=W,d=X,l=null,b=[],r={},AA=[],e=null,AG=null,AF=null,m=null,h=X,AH=null,k=X,t=X,p=X,AE=null;var Z=function(){if((typeof x!==N)&&(x!==null)&&(x!==X)){AG=x+W}else{AG="0.0.0"}if(typeof AI===O){AF=AI}if(typeof o!==N){h=!(!o)}if(typeof AB===O){m=AB}function AM(){A(g);try{E.detachEvent(D,AM)}catch(AP){}}try{E.attachEvent(D,AM)}catch(AN){}(function AO(){try{P.bindEvent(E,D,y)}catch(AP){g=C(arguments.callee,25);return }AM();AH=P.ua.pv.join(".");g=C(AD,1)})()}();function AD(){try{e=V.getElementsByTagName("body")[0]}catch(AN){}if((typeof e===N)||(e===null)){g=C(AD,25);return }try{R.swfobject.getObjectById("a");L=R.swfobject}catch(AM){g=C(AD,25);return }t=L.hasFlashPlayerVersion(a);k=L.hasFlashPlayerVersion(AG);AJ();if(typeof AF===O){AF(j)}d=G;if(k){u()}else{if(h&&!f){v()}}}function y(){if(typeof E.detachEvent!==N){E.detachEvent(D,y)}I._ins=null;if((typeof l!==N)&&(l!==null)){try{l.updateSWFCallback=null;AC=null}catch(AP){}l=null}try{for(var AO in j){if(j[AO]!==Object.prototype[AO]){try{j[AO]=null}catch(AN){}}}}catch(AM){}j=null;e=null;Y();AA=null;AF=null;m=null;try{for(var AS in I){if(I[AS]!==Object.prototype[AS]){try{I[AS]=null}catch(AR){}}}}catch(AQ){}I=null;P.checkplayer=null;P=null;R=null}function AL(AN,AO,AM){AA[AA.length]={func:AN,funcName:AO,args:AM}}function u(){if(!d){i=C(u,25);return }var AO=0;try{AO=AA.length}catch(AP){}for(var AN=0;AN<AO;AN++){try{AA[AN].func.apply(j,AA[AN].args);AA[AN]=X}catch(AM){k=X;AJ();if(typeof AF===O){AF(j)}else{throw new R.Error("checkplayer::"+AA[AN].funcName+"() call failed.")}}}AA=null}function Y(){A(g);g=null;A(i);i=null;for(var AN in r){if(r[AN]!==Object.prototype[AN]){Q(r[AN]);r[AN]=X}}for(var AM in z){if(z[AM]!==Object.prototype[AM]){A(z[AM]);z[AM]=X}}}function AJ(){try{j.playerVersionDetected=AH;j.checkPassed=k;j.updateable=t;j.updateStatus=p;j.updateControlsContainer=AE}catch(AM){}}function n(AS,AN){var AP=AN?"visible":"hidden";var AR=P.getObjectById(AS);try{if(AR!==null&&(typeof AR.style!==N)&&(AR.style!==null)){AR.style.visibility=AP}else{try{P.createCSS("#"+AS,"visibility:"+AP)}catch(AQ){}}}catch(AO){try{P.createCSS("#"+AS,"visibility:"+AP)}catch(AM){}}}function v(){var AR=e;if((typeof AR===N)||(AR===null)){z[z.length]=C(v,25);return }try{L.getObjectById("a")}catch(AQ){z[z.length]=C(v,25);return }if(!f){f=G;Y();if(t){s="CheckPlayerUpdate";AK=s+"SWF";P.createCSS("#"+s,"width:221px;height:145px;position:absolute;left:5px;top:5px;border:none;background-color:#000000;display:block;");P.createCSS("#"+AK,"display:inline;position:absolute;left:1px;top:1px;");AE=V.createElement(M);AE.id=s;AR.appendChild(AE);n(AE.id,X);AJ();var AT=null;try{AT=E.top.location.toString()}catch(AM){AT=E.location.toString()}var AO={swfId:AK,MMredirectURL:AT.replace(/&/g,"%26"),MMplayerType:(P.ua.ie&&P.ua.win?"ActiveX":"PlugIn"),MMdoctitle:V.title.slice(0,47)+" - Flash Player Installation"};var AS={allowScriptAccess:"always"};var AP={id:AK,name:AK};try{q(P.base_path+"updateplayer.swf",{appendToId:s},"219","143",AO,AS,AP,{swfTimeout:8000,swfCB:c},G)}catch(AN){w();return }}else{w()}}}function w(AM){if(typeof AM===N){AM="Flash Player not detected or not updateable."}p=I.UPDATE_FAILED;AJ();if(typeof m===O){m(j)}else{throw new R.Error("checkplayer::UpdatePlayer(): "+AM)}}function c(AM){if(AM.status===I.SWF_LOADED){A(r["continueUpdate_"+AK]);r["continueUpdate_"+AK]=X;l=AM.srcElem;l.updateSWFCallback=AC;p=I.UPDATE_INIT;AJ();if(typeof m===O){m(j)}n(AE.id,G)}else{if(AM.status===I.SWF_FAILED||AM.status===I.SWF_TIMEOUT){w()}}}function AC(AN){try{if(AN===0){p=I.UPDATE_SUCCESSFUL;AE.style.display=J;try{E.open(W,"_self",W);E.close();R.self.opener=E;R.self.close()}catch(AO){}}else{if(AN===1){p=I.UPDATE_CANCELED;AE.style.display=J}else{if(AN===2){AE.style.display=J;w("The Flash Player update failed.");return }else{if(AN===3){AE.style.display=J;w("The Flash Player update timed out.");return }}}}}catch(AM){}AJ();if(typeof m===O){m(j)}}function q(Af,AS,AU,AN,AP,AR,AW,Ad,Ab){if(AS!==null&&(typeof AS===T||typeof AS.replaceId===T)){n(((typeof AS===T)?AS:AS.replaceId),X)}if(!d&&!Ab){AL(q,"DoSWF",arguments);return }if(k||Ab){AU+=W;AN+=W;var AZ=(typeof AW===H)?AW:{};AZ.data=Af;AZ.width=AU;AZ.height=AN;var AY=(typeof AR===H)?AR:{};if(typeof AP===H){for(var Ac in AP){if(AP[Ac]!==Object.prototype[Ac]){if(typeof AY.flashvars!==N){AY.flashvars+="&"+Ac+"="+AP[Ac]}else{AY.flashvars=Ac+"="+AP[Ac]}}}}var Ae=null;if(typeof AW.id!==N){Ae=AW.id}else{if(AS!==null&&(typeof AS===T||typeof AS.replaceId===T)){Ae=((typeof AS===T)?AS:AS.replaceId)}else{Ae="swf_"+b.length}}var Ag=null;if(AS===null||AS===X||typeof AS.appendToId===T){var AO=null;if(AS!==null&&AS!==X&&typeof AS.appendToId===T){AO=P.getObjectById(AS.appendToId)}else{AO=e}var AT=V.createElement(M);Ag=(AT.id=Ae);AO.appendChild(AT)}else{Ag=((typeof AS.replaceId===T)?AS.replaceId:AS)}var AX=function(){},Aa=0,AM=W,AV=null;if(typeof Ad!==N&&Ad!==null){if(typeof Ad===H){if(typeof Ad.swfCB!==N&&Ad.swfCB!==null){AX=Ad.swfCB}if(typeof Ad.swfTimeout!==N&&(R.parseInt(Ad.swfTimeout,10)>0)){Aa=Ad.swfTimeout}if(typeof Ad.swfEICheck!==N&&Ad.swfEICheck!==null&&Ad.swfEICheck!==W){AM=Ad.swfEICheck}}else{if(typeof Ad===O){AX=Ad}}}try{AV=L.createSWF(AZ,AY,Ag)}catch(AQ){}if(AV!==null){b[b.length]=Ae;if(typeof AX===O){AX({status:I.SWF_INIT,srcId:Ae,srcElem:AV});r[Ae]=S(function(){var Ai=P.getObjectById(Ae);if((typeof Ai!==N)&&(Ai!==null)&&(Ai.nodeName==="OBJECT"||Ai.nodeName==="EMBED")){var Ah=0;try{Ah=Ai.PercentLoaded()}catch(Aj){}if(Ah>0){if(Aa>0){A(r["DoSWFtimeout_"+Ae]);r["DoSWFtimeout_"+Ae]=X}if(Ah<100){C(function(){AX({status:I.SWF_LOADING,srcId:Ae,srcElem:Ai})},1)}else{Q(r[Ae]);r[Ae]=X;C(function(){AX({status:I.SWF_LOADED,srcId:Ae,srcElem:Ai})},1);if(AM!==W){var Ak=X;r[Ae]=S(function(){if(!Ak&&typeof Ai[AM]===O){Ak=G;try{Ai[AM]();Q(r[Ae]);r[Ae]=X;AX({status:I.SWF_EI_READY,srcId:Ae,srcElem:Ai})}catch(Al){}Ak=X}},25)}}}}},50);if(Aa>0){r["DoSWFtimeout_"+Ae]=C(function(){var Ai=P.getObjectById(Ae);if((typeof Ai!==N)&&(Ai!==null)&&(Ai.nodeName==="OBJECT"||Ai.nodeName==="EMBED")){var Ah=0;try{Ah=Ai.PercentLoaded()}catch(Aj){}if(Ah<=0){Q(r[Ae]);r[Ae]=X;if(P.ua.ie&&P.ua.win&&Ai.readyState!==4){Ai.id="removeSWF_"+Ai.id;Ai.style.display=J;r[Ai.id]=S(function(){if(Ai.readyState===4){Q(r[Ai.id]);r[Ai.id]=X;L.removeSWF(Ai.id)}},500)}else{L.removeSWF(Ai.id)}r[Ae]=X;r["DoSWFtimeout_"+Ae]=X;AX({status:I.SWF_TIMEOUT,srcId:Ae,srcElem:Ai})}}},Aa)}}}else{if(typeof AX===O){AX({status:I.SWF_FAILED,srcId:Ae,srcElem:null})}else{throw new R.Error("checkplayer::DoSWF(): SWF could not be loaded.")}}}else{if(typeof AX===O){AX({status:I.SWF_FAILED,srcId:Ae,srcElem:null})}else{throw new R.Error("checkplayer::DoSWF(): Minimum Flash Version not detected.")}}}var j={playerVersionDetected:AH,versionChecked:AG,checkPassed:k,UpdatePlayer:v,DoSWF:function(AR,AS,AP,AQ,AN,AM,AO,AT){q(AR,AS,AP,AQ,AN,AM,AO,AT,X)},ready:function(){return d},updateable:t,updateStatus:p,updateControlsContainer:AE};I._ins=j;return j};I=P.checkplayer;I.UPDATE_INIT=1;I.UPDATE_SUCCESSFUL=2;I.UPDATE_CANCELED=3;I.UPDATE_FAILED=4;I.SWF_INIT=5;I.SWF_LOADING=6;I.SWF_LOADED=7;I.SWF_FAILED=8;I.SWF_TIMEOUT=9;I.SWF_EI_READY=10;I.module_ready=function(){}})(window);
@@ -0,0 +1,7 @@
1
+ <?xml version="1.0"?>
2
+ <!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
3
+ <cross-domain-policy>
4
+ <site-control permitted-cross-domain-policies="all"/>
5
+ <allow-access-from domain="*" />
6
+ <allow-http-request-headers-from domain="*" headers="*" />
7
+ </cross-domain-policy>
@@ -0,0 +1,2 @@
1
+ /* flXHR 1.0.4 <http://flxhr.flensed.com/> | Copyright (c) 2008 Kyle Simpson, Getify Solutions, Inc. | This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php> */
2
+ (function(c){var E=c,h=c.document,z="undefined",a=true,L=false,g="",o="object",k="function",N="string",l="div",e="onunload",H=null,y=null,K=null,q=null,x=0,i=[],m=null,r=null,G="flXHR.js",n="flensed.js",P="flXHR.vbs",j="checkplayer.js",A="flXHR.swf",u=c.parseInt,w=c.setTimeout,f=c.clearTimeout,s=c.setInterval,v=c.clearInterval,O="instanceId",J="readyState",D="onreadystatechange",M="ontimeout",C="onerror",d="binaryResponseBody",F="xmlResponseText",I="loadPolicyURL",b="noCacheHeader",p="sendTimeout",B="appendToId",t="swfIdPrefix";if(typeof c.flensed===z){c.flensed={}}if(typeof c.flensed.flXHR!==z){return}y=c.flensed;w(function(){var Q=L,ab=h.getElementsByTagName("script"),V=ab.length;try{y.base_path.toLowerCase();Q=a}catch(T){y.base_path=g}function Z(ai,ah,aj){for(var ag=0;ag<V;ag++){if(typeof ab[ag].src!==z){if(ab[ag].src.indexOf(ai)>=0){break}}}var af=h.createElement("script");af.setAttribute("src",y.base_path+ai);if(typeof ah!==z){af.setAttribute("type",ah)}if(typeof aj!==z){af.setAttribute("language",aj)}h.getElementsByTagName("head")[0].appendChild(af)}if((typeof ab!==z)&&(ab!==null)){if(!Q){var ac=0;for(var U=0;U<V;U++){if(typeof ab[U].src!==z){if(((ac=ab[U].src.indexOf(n))>=0)||((ac=ab[U].src.indexOf(G))>=0)){y.base_path=ab[U].src.substr(0,ac);break}}}}}try{y.checkplayer.module_ready()}catch(aa){Z(j,"text/javascript")}var ad=null;(function ae(){try{y.ua.pv.join(".")}catch(af){ad=w(arguments.callee,25);return}if(y.ua.win&&y.ua.ie){Z(P,"text/vbscript","vbscript")}y.binaryToString=function(aj,ai){ai=(((y.ua.win&&y.ua.ie)&&typeof ai!==z)?(!(!ai)):!(y.ua.win&&y.ua.ie));if(!ai){try{return flXHR_vb_BinaryToString(aj)}catch(al){}}var am=g,ah=[];try{for(var ak=0;ak<aj.length;ak++){ah[ah.length]=String.fromCharCode(aj[ak])}am=ah.join(g)}catch(ag){}return am};y.bindEvent(E,e,function(){try{c.flensed.unbindEvent(E,e,arguments.callee);for(var ai in r){if(r[ai]!==Object.prototype[ai]){try{r[ai]=null}catch(ah){}}}y.flXHR=null;r=null;y=null;q=null;K=null}catch(ag){}})})();function Y(){f(ad);try{E.detachEvent(e,Y)}catch(af){}}if(ad!==null){try{E.attachEvent(e,Y)}catch(X){}}var S=null;function R(){f(S);try{E.detachEvent(e,R)}catch(af){}}try{E.attachEvent(e,R)}catch(W){}S=w(function(){R();try{y.checkplayer.module_ready()}catch(af){throw new c.Error("flXHR dependencies failed to load.")}},20000)},0);y.flXHR=function(aQ){var ab=L;if(aQ!==null&&typeof aQ===o){if(typeof aQ.instancePooling!==z){ab=!(!aQ.instancePooling);if(ab){var aF=function(){for(var aZ=0;aZ<i.length;aZ++){var a0=i[aZ];if(a0[J]===4){a0.Reset();a0.Configure(aQ);return a0}}return null}();if(aF!==null){return aF}}}}var aV=++x,ai=[],af=null,ah=null,X=null,Y=null,aL=-1,aa=null,ac=null,ao=null,aE=null,aw=null,aU=null,ak=null,Q=null,aK=null,Z=a,aB=L,aX="flXHR_"+aV,au=a,aC=L,aA=a,aI=L,S="flXHR_swf",ae="flXHRhideSwf",V=null,aG=-1,T=g,aJ=null,aD=null,aN=null;var U=function(){if(typeof aQ===o&&aQ!==null){if((typeof aQ[O]!==z)&&(aQ[O]!==null)&&(aQ[O]!==g)){aX=aQ[O]}if((typeof aQ[t]!==z)&&(aQ[t]!==null)&&(aQ[t]!==g)){S=aQ[t]}if((typeof aQ[B]!==z)&&(aQ[B]!==null)&&(aQ[B]!==g)){V=aQ[B]}if((typeof aQ[I]!==z)&&(aQ[I]!==null)&&(aQ[I]!==g)){T=aQ[I]}if(typeof aQ[b]!==z){au=!(!aQ[b])}if(typeof aQ[d]!==z){aC=!(!aQ[d])}if(typeof aQ[F]!==z){aA=!(!aQ[F])}if(typeof aQ.autoUpdatePlayer!==z){aI=!(!aQ.autoUpdatePlayer)}if((typeof aQ[p]!==z)&&((H=u(aQ[p],10))>0)){aG=H}if((typeof aQ[D]!==z)&&(aQ[D]!==null)){aJ=aQ[D]}if((typeof aQ[C]!==z)&&(aQ[C]!==null)){aD=aQ[C]}if((typeof aQ[M]!==z)&&(aQ[M]!==null)){aN=aQ[M]}}Y=S+"_"+aV;function aZ(){f(af);try{E.detachEvent(e,aZ)}catch(a2){}}try{E.attachEvent(e,aZ)}catch(a0){}(function a1(){try{y.bindEvent(E,e,aH)}catch(a2){af=w(arguments.callee,25);return}aZ();af=w(aS,1)})()}();function aS(){if(V===null){Q=h.getElementsByTagName("body")[0]}else{Q=y.getObjectById(V)}try{Q.nodeName.toLowerCase();y.checkplayer.module_ready();K=y.checkplayer}catch(a0){af=w(aS,25);return}if((q===null)&&(typeof K._ins===z)){try{q=new K(r.MIN_PLAYER_VERSION,aT,L,aq)}catch(aZ){aO(r.DEPENDENCY_ERROR,"flXHR: checkplayer Init Failed","The initialization of the 'checkplayer' library failed to complete.");return}}else{q=K._ins;ag()}}function ag(){if(q===null||!q.checkPassed){af=w(ag,25);return}if(m===null&&V===null){y.createCSS("."+ae,"left:-1px;top:0px;width:1px;height:1px;position:absolute;");m=a}var a3=h.createElement(l);a3.id=Y;a3.className=ae;Q.appendChild(a3);Q=null;var a0={},a4={allowScriptAccess:"always"},a1={id:Y,name:Y,styleclass:ae},a2={swfCB:aR,swfEICheck:"reset"};try{q.DoSWF(y.base_path+A,Y,"1","1",a0,a4,a1,a2)}catch(aZ){aO(r.DEPENDENCY_ERROR,"flXHR: checkplayer Call Failed","A call to the 'checkplayer' library failed to complete.");return}}function aR(aZ){if(aZ.status!==K.SWF_EI_READY){return}R();aU=y.getObjectById(Y);aU.setId(Y);if(T!==g){aU.loadPolicy(T)}aU.autoNoCacheHeader(au);aU.returnBinaryResponseBody(aC);aU.doOnReadyStateChange=al;aU.doOnError=aO;aU.sendProcessed=ap;aU.chunkResponse=ay;aL=0;ax();aW();if(typeof aJ===k){try{aJ(ak)}catch(a0){aO(r.HANDLER_ERROR,"flXHR::onreadystatechange(): Error","An error occurred in the handler function. ("+a0.message+")");return}}at()}function aH(){try{c.flensed.unbindEvent(E,e,aH)}catch(a2){}try{for(var a3=0;a3<i.length;a3++){if(i[a3]===ak){i[a3]=L}}}catch(ba){}try{for(var a5 in ak){if(ak[a5]!==Object.prototype[a5]){try{ak[a5]=null}catch(a9){}}}}catch(a8){}ak=null;R();if((typeof aU!==z)&&(aU!==null)){try{aU.abort()}catch(a7){}try{aU.doOnReadyStateChange=null;al=null}catch(a6){}try{aU.doOnError=null;doOnError=null}catch(a4){}try{aU.sendProcessed=null;ap=null}catch(a1){}try{aU.chunkResponse=null;ay=null}catch(a0){}aU=null;try{c.swfobject.removeSWF(Y)}catch(aZ){}}aP();aJ=null;aD=null;aN=null;ao=null;aa=null;aK=null;Q=null}function ay(){if(aC&&typeof arguments[0]!==z){aK=((aK!==null)?aK:[]);aK=aK.concat(arguments[0])}else{if(typeof arguments[0]===N){aK=((aK!==null)?aK:g);aK+=arguments[0]}}}function al(){if(typeof arguments[0]!==z){aL=arguments[0]}if(aL===4){R();if(aC&&aK!==null){try{ac=y.binaryToString(aK,a);try{aa=flXHR_vb_StringToBinary(ac)}catch(a1){aa=aK}}catch(a0){}}else{ac=aK}aK=null;if(ac!==g){if(aA){try{ao=y.parseXMLString(ac)}catch(aZ){ao={}}}}}if(typeof arguments[1]!==z){aE=arguments[1]}if(typeof arguments[2]!==z){aw=arguments[2]}ad(aL)}function ad(aZ){ax();aW();ak[J]=Math.max(0,aZ);if(typeof aJ===k){try{aJ(ak)}catch(a0){aO(r.HANDLER_ERROR,"flXHR::onreadystatechange(): Error","An error occurred in the handler function. ("+a0.message+")");return}}}function aO(){R();aP();aB=a;var a2;try{a2=new y.error(arguments[0],arguments[1],arguments[2],ak)}catch(a3){function a0(){this.number=0;this.name="flXHR Error: Unknown";this.description="Unknown error from 'flXHR' library.";this.message=this.description;this.srcElement=ak;var a7=this.number,a6=this.name,a9=this.description;function a8(){return a7+", "+a6+", "+a9}this.toString=a8}a2=new a0()}var a4=L;try{if(typeof aD===k){aD(a2);a4=a}}catch(aZ){var a1=a2.toString();function a5(){this.number=r.HANDLER_ERROR;this.name="flXHR::onerror(): Error";this.description="An error occured in the handler function. ("+aZ.message+")\nPrevious:["+a1+"]";this.message=this.description;this.srcElement=ak;var a7=this.number,a6=this.name,a9=this.description;function a8(){return a7+", "+a6+", "+a9}this.toString=a8}a2=new a5()}if(!a4){w(function(){y.throwUnhandledError(a2.toString())},1)}}function W(){am();aB=a;if(typeof aN===k){try{aN(ak)}catch(aZ){aO(r.HANDLER_ERROR,"flXHR::ontimeout(): Error","An error occurred in the handler function. ("+aZ.message+")");return}}else{aO(r.TIMEOUT_ERROR,"flXHR: Operation Timed out","The requested operation timed out.")}}function R(){f(af);af=null;f(X);X=null;f(ah);ah=null}function aY(a0,a1,aZ){ai[ai.length]={func:a0,funcName:a1,args:aZ};Z=L}function aP(){if(!Z){Z=a;var a0=ai.length;for(var aZ=0;aZ<a0;aZ++){try{ai[aZ]=L}catch(a1){}}ai=[]}}function at(){if(aL<0){ah=w(at,25);return}if(!Z){for(var aZ=0;aZ<ai.length;aZ++){try{if(ai[aZ]!==L){ai[aZ].func.apply(ak,ai[aZ].args);ai[aZ]=L}}catch(a0){aO(r.HANDLER_ERROR,"flXHR::"+ai[aZ].funcName+"(): Error","An error occurred in the "+ai[aZ].funcName+"() function.");return}}Z=a}}function aW(){try{ak[O]=aX;ak[J]=Math.max(0,aL);ak.status=aE;ak.statusText=aw;ak.responseText=ac;ak.responseXML=ao;ak.responseBody=aa;ak[D]=aJ;ak[C]=aD;ak[M]=aN;ak[I]=T;ak[b]=au;ak[d]=aC;ak[F]=aA}catch(aZ){}}function ax(){try{aX=ak[O];if(ak.timeout!==null&&(H=u(ak.timeout,10))>0){aG=H}aJ=ak[D];aD=ak[C];aN=ak[M];if(ak[I]!==null){if((ak[I]!==T)&&(aL>=0)){aU.loadPolicy(ak[I])}T=ak[I]}if(ak[b]!==null){if((ak[b]!==au)&&(aL>=0)){aU.autoNoCacheHeader(ak[b])}au=ak[b]}if(ak[d]!==null){if((ak[d]!==aC)&&(aL>=0)){aU.returnBinaryResponseBody(ak[d])}aC=ak[d]}if(aA!==null){aA=!(!ak[F])}}catch(aZ){}}function aM(){am();try{aU.reset()}catch(aZ){}aE=null;aw=null;ac=null;ao=null;aa=null;aK=null;aB=L;aW();T=g;ax()}function aT(aZ){if(aZ.checkPassed){ag()}else{if(!aI){aO(r.PLAYER_VERSION_ERROR,"flXHR: Insufficient Flash Player Version","The Flash Player was either not detected, or the detected version ("+aZ.playerVersionDetected+") was not at least the minimum version ("+r.MIN_PLAYER_VERSION+") needed by the 'flXHR' library.")}else{q.UpdatePlayer()}}}function aq(aZ){if(aZ.updateStatus===K.UPDATE_CANCELED){aO(r.PLAYER_VERSION_ERROR,"flXHR: Flash Player Update Canceled","The Flash Player was not updated.")}else{if(aZ.updateStatus===K.UPDATE_FAILED){aO(r.PLAYER_VERSION_ERROR,"flXHR: Flash Player Update Failed","The Flash Player was either not detected or could not be updated.")}}}function ap(){if(aG!==null&&aG>0){X=w(W,aG)}}function am(){R();aP();ax();aL=0;try{aU.abort()}catch(aZ){aO(r.CALL_ERROR,"flXHR::abort(): Failed","The abort() call failed to complete.")}aW()}function av(){ax();if(typeof arguments[0]===z||typeof arguments[1]===z){aO(r.CALL_ERROR,"flXHR::open(): Failed","The open() call requires 'method' and 'url' parameters.")}else{if(aL>0||aB){aM()}if(ak[J]===0){al(1)}else{aL=1}var a6=arguments[0],a5=arguments[1],aZ=(typeof arguments[2]!==z)?arguments[2]:a,a9=(typeof arguments[3]!==z)?arguments[3]:g,a8=(typeof arguments[4]!==z)?arguments[4]:g;try{aU.autoNoCacheHeader(au);aU.open(a6,a5,aZ,a9,a8)}catch(a7){aO(r.CALL_ERROR,"flXHR::open(): Failed","The open() call failed to complete.")}}}function az(){ax();if(aL<=1&&!aB){var aZ=(typeof arguments[0]!==z)?arguments[0]:g;if(ak[J]===1){al(2)}else{aL=2}try{aU.autoNoCacheHeader(au);aU.send(aZ)}catch(a1){aO(r.CALL_ERROR,"flXHR::send(): Failed","The send() call failed to complete.")}}else{aO(r.CALL_ERROR,"flXHR::send(): Failed","The send() call cannot be made at this time.")}}function aj(){ax();if(typeof arguments[0]===z||typeof arguments[1]===z){aO(r.CALL_ERROR,"flXHR::setRequestHeader(): Failed","The setRequestHeader() call requires 'name' and 'value' parameters.")}else{if(!aB){var a2=(typeof arguments[0]!==z)?arguments[0]:g,aZ=(typeof arguments[1]!==z)?arguments[1]:g;try{aU.setRequestHeader(a2,aZ)}catch(a3){aO(r.CALL_ERROR,"flXHR::setRequestHeader(): Failed","The setRequestHeader() call failed to complete.")}}}}function an(){ax();return g}function ar(){ax();return[]}ak={readyState:0,responseBody:aa,responseText:ac,responseXML:ao,status:aE,statusText:aw,timeout:aG,open:function(){ax();if(ak[J]===0){ad(1)}if(!Z||aL<0){aY(av,"open",arguments);return}av.apply({},arguments)},send:function(){ax();if(ak[J]===1){ad(2)}if(!Z||aL<0){aY(az,"send",arguments);return}az.apply({},arguments)},abort:am,setRequestHeader:function(){ax();if(!Z||aL<0){aY(aj,"setRequestHeader",arguments);return}aj.apply({},arguments)},getResponseHeader:an,getAllResponseHeaders:ar,onreadystatechange:aJ,ontimeout:aN,instanceId:aX,loadPolicyURL:T,noCacheHeader:au,binaryResponseBody:aC,xmlResponseText:aA,onerror:aD,Configure:function(aZ){if(typeof aZ===o&&aZ!==null){if((typeof aZ[O]!==z)&&(aZ[O]!==null)&&(aZ[O]!==g)){aX=aZ[O]}if(typeof aZ[b]!==z){au=!(!aZ[b]);if(aL>=0){aU.autoNoCacheHeader(au)}}if(typeof aZ[d]!==z){aC=!(!aZ[d]);if(aL>=0){aU.returnBinaryResponseBody(aC)}}if(typeof aZ[F]!==z){aA=!(!aZ[F])}if((typeof aZ[D]!==z)&&(aZ[D]!==null)){aJ=aZ[D]}if((typeof aZ[C]!==z)&&(aZ[C]!==null)){aD=aZ[C]}if((typeof aZ[M]!==z)&&(aZ[M]!==null)){aN=aZ[M]}if((typeof aZ[p]!==z)&&((H=u(aZ[p],10))>0)){aG=H}if((typeof aZ[I]!==z)&&(aZ[I]!==null)&&(aZ[I]!==g)&&(aZ[I]!==T)){T=aZ[I];if(aL>=0){aU.loadPolicy(T)}}aW()}},Reset:aM,Destroy:aH};if(ab){i[i.length]=ak}return ak};r=y.flXHR;r.HANDLER_ERROR=10;r.CALL_ERROR=11;r.TIMEOUT_ERROR=12;r.DEPENDENCY_ERROR=13;r.PLAYER_VERSION_ERROR=14;r.SECURITY_ERROR=15;r.COMMUNICATION_ERROR=16;r.MIN_PLAYER_VERSION="9.0.124";r.module_ready=function(){}})(window);
@@ -0,0 +1,44 @@
1
+ ' flXHR 1.0.4 (VB Binary Helpers) <http://flxhr.flensed.com/>
2
+ ' Copyright (c) 2008 Kyle Simpson, Getify Solutions, Inc.
3
+ ' This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
4
+ '
5
+ ' ====================================================================================================
6
+
7
+ Function flXHR_vb_BinaryToString(obj)
8
+ Dim I,S
9
+ Dim J
10
+ For I = 1 to LenB(obj)
11
+ J = AscB(MidB(obj,I,1))
12
+ If J = 0 Then
13
+ S = S & ""
14
+ Else
15
+ S = S & Chr(J)
16
+ End If
17
+ Next
18
+ flXHR_vb_BinaryToString = S
19
+ End Function
20
+
21
+ Function flXHR_vb_SizeOfBytes(obj)
22
+ Dim I
23
+ I = LenB(obj)
24
+ flXHR_vb_SizeOfBytes = I
25
+ End Function
26
+
27
+ Function flXHR_vb_StringToBinary(str)
28
+ dim binobj
29
+ dim ahex(),oparser,oelem
30
+ redim ahex(len(str)-1)
31
+ for i=0 to len(str)-1
32
+ ahex(i)=right("00" & hex(asc(mid(str,i+1,1))),2)
33
+ next
34
+ set oparser=createobject("msxml2.domdocument")
35
+ with oparser
36
+ set oelem=.createElement("x")
37
+ oelem.datatype="bin.hex"
38
+ oelem.text=join(ahex,"")
39
+ binobj=oelem.nodetypedvalue
40
+ end with
41
+ set oelem=nothing
42
+ set oparser=nothing
43
+ flXHR_vb_StringToBinary=binobj
44
+ End Function
@@ -0,0 +1,12 @@
1
+ /* flensedCore 1.0 <http://www.flensed.com/>
2
+ Copyright (c) 2008 Kyle Simpson, Getify Solutions, Inc.
3
+ This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
4
+
5
+ ====================================================================================================
6
+ Portions of this code were extracted and/or derived from:
7
+
8
+ SWFObject v2.1 & 2.2a8 <http://code.google.com/p/swfobject/>
9
+ Copyright (c) 2007-2008 Geoff Stearns, Michael Williams, and Bobby van der Sluis
10
+ This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
11
+ */
12
+ (function(B){var H=B,L=B.document,N="undefined",M=true,C=false,E="",F="object",D="string",G=null,J=null,I=null,K=B.parseInt,A=B.setTimeout;if(typeof B.flensed===N){B.flensed={}}else{if(typeof B.flensed.ua!==N){return}}G=B.flensed;A(function(){var P="flensed.js",U=C,R=L.getElementsByTagName("script"),T=R.length;try{G.base_path.toLowerCase();U=M}catch(S){G.base_path=E}if((typeof R!==N)&&(R!==null)){if(!U){var O=0;for(var Q=0;Q<T;Q++){if(typeof R[Q].src!==N){if((O=R[Q].src.indexOf(P))>=0){G.base_path=R[Q].src.substr(0,O);break}}}}}},0);G.parseXMLString=function(P){var O=null;if(H.ActiveXObject){O=new B.ActiveXObject("Microsoft.XMLDOM");O.async=C;O.loadXML(P)}else{var Q=new B.DOMParser();O=Q.parseFromString(P,"text/xml")}return O};G.getObjectById=function(O){try{if(L.layers){return L.layers[O]}else{if(L.all){return L.all[O]}else{if(L.getElementById){return L.getElementById(O)}}}}catch(P){}return null};G.createCSS=function(T,P,U,S){if(G.ua.ie&&G.ua.mac){return}var R=L.getElementsByTagName("head")[0];if(!R){return}var O=(U&&typeof U===D)?U:"screen";if(S){J=null;I=null}if(!J||I!==O){var Q=L.createElement("style");Q.setAttribute("type","text/css");Q.setAttribute("media",O);J=R.appendChild(Q);if(G.ua.ie&&G.ua.win&&typeof L.styleSheets!==N&&L.styleSheets.length>0){J=L.styleSheets[L.styleSheets.length-1]}I=O}if(G.ua.ie&&G.ua.win){if(J&&typeof J.addRule===F){J.addRule(T,P)}}else{if(J&&typeof L.createTextNode!==N){J.appendChild(L.createTextNode(T+" {"+P+"}"))}}};G.bindEvent=function(R,O,Q){O=O.toLowerCase();try{if(typeof R.addEventListener!==N){R.addEventListener(O.replace(/^on/,E),Q,C)}else{if(typeof R.attachEvent!==N){R.attachEvent(O,Q)}}}catch(P){}};G.unbindEvent=function(R,O,Q){O=O.toLowerCase();try{if(typeof R.removeEventListener!==N){R.removeEventListener(O.replace(/^on/,E),Q,C)}else{if(typeof R.detachEvent!==N){R.detachEvent(O,Q)}}}catch(P){}};G.throwUnhandledError=function(O){throw new B.Error(O)};G.error=function(R,P,Q,O){return{number:R,name:P,description:Q,message:Q,srcElement:O,toString:function(){return R+", "+P+", "+Q}}};G.ua=function(){var U="Shockwave Flash",O="ShockwaveFlash.ShockwaveFlash",Y="application/x-shockwave-flash",P=B.navigator,V=typeof L.getElementById!==N&&typeof L.getElementsByTagName!==N&&typeof L.createElement!==N,f=[0,0,0],X=null;if(typeof P.plugins!==N&&typeof P.plugins[U]===F){X=P.plugins[U].description;if(X&&!(typeof P.mimeTypes!==N&&P.mimeTypes[Y]&&!P.mimeTypes[Y].enabledPlugin)){X=X.replace(/^.*\s+(\S+\s+\S+$)/,"$1");f[0]=K(X.replace(/^(.*)\..*$/,"$1"),10);f[1]=K(X.replace(/^.*\.(.*)\s.*$/,"$1"),10);f[2]=/r/.test(X)?K(X.replace(/^.*r(.*)$/,"$1"),10):0}}else{if(typeof H.ActiveXObject!==N){try{var Z=new B.ActiveXObject(O);if(Z){X=Z.GetVariable("$version");if(X){X=X.split(" ")[1].split(",");f=[K(X[0],10),K(X[1],10),K(X[2],10)]}}}catch(T){}}}var e=P.userAgent.toLowerCase(),S=P.platform.toLowerCase(),c=/webkit/.test(e)?parseFloat(e.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):C,Q=C,R=0,b=S?/win/.test(S):/win/.test(e),W=S?/mac/.test(S):/mac/.test(e);/*@cc_on Q=M;try{R=K(e.match(/msie (\d+)/)[1],10);}catch(e2){}@if(@_win32)b=M;@elif(@_mac)W=M;@end @*/return{w3cdom:V,pv:f,webkit:c,ie:Q,ieVer:R,win:b,mac:W}}()})(window);
@@ -0,0 +1,31 @@
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 () {
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
+ xhr.onreadystatechange = this.func.prependArg(this);
23
+
24
+ return xhr;
25
+ };
26
+ } else {
27
+ Strophe.error("flXHR plugin loaded, but flXHR not found." +
28
+ " Falling back to native XHR implementation.");
29
+ }
30
+ }
31
+ });