Skip to content
This repository
Browse code

Merge branch 'hotfix/645859'

  • Loading branch information...
commit 0df924b849046fbd7089727f02b26fea6f70f659 2 parents ed7a934 + 0f51114
James Burke jrburke authored

Showing 178 changed files with 21,723 additions and 8 deletions. Show diff stats Hide diff stats

  1. +2 2 production.ini
  2. +1 1  setup.py
  3. +2 2 staging.ini
  4. +323 0 web/0.3.4/auth.html
  5. +8 0 web/0.3.4/blank.html
  6. +10 0 web/0.3.4/build.js
  7. BIN  web/0.3.4/favicon.ico
  8. BIN  web/0.3.4/favicon.png
  9. BIN  web/0.3.4/i/LinkedIn_Logo16px.png
  10. BIN  web/0.3.4/i/check.png
  11. BIN  web/0.3.4/i/cornerBottomLeft.png
  12. BIN  web/0.3.4/i/cornerBottomRight.png
  13. BIN  web/0.3.4/i/cornerTopLeft.png
  14. BIN  web/0.3.4/i/cornerTopRight.png
  15. BIN  web/0.3.4/i/f1Icon.png
  16. BIN  web/0.3.4/i/f1Logo.png
  17. BIN  web/0.3.4/i/f1LogoVert.png
  18. BIN  web/0.3.4/i/facebookIcon.png
  19. BIN  web/0.3.4/i/fancybox/blank.gif
  20. BIN  web/0.3.4/i/fancybox/fancy_close.png
  21. BIN  web/0.3.4/i/fancybox/fancy_loading.png
  22. BIN  web/0.3.4/i/fancybox/fancy_nav_left.png
  23. BIN  web/0.3.4/i/fancybox/fancy_nav_right.png
  24. BIN  web/0.3.4/i/fancybox/fancy_shadow_e.png
  25. BIN  web/0.3.4/i/fancybox/fancy_shadow_n.png
  26. BIN  web/0.3.4/i/fancybox/fancy_shadow_ne.png
  27. BIN  web/0.3.4/i/fancybox/fancy_shadow_nw.png
  28. BIN  web/0.3.4/i/fancybox/fancy_shadow_s.png
  29. BIN  web/0.3.4/i/fancybox/fancy_shadow_se.png
  30. BIN  web/0.3.4/i/fancybox/fancy_shadow_sw.png
  31. BIN  web/0.3.4/i/fancybox/fancy_shadow_w.png
  32. BIN  web/0.3.4/i/fancybox/fancy_title_left.png
  33. BIN  web/0.3.4/i/fancybox/fancy_title_main.png
  34. BIN  web/0.3.4/i/fancybox/fancy_title_over.png
  35. BIN  web/0.3.4/i/fancybox/fancy_title_right.png
  36. BIN  web/0.3.4/i/fancybox/fancybox-x.png
  37. BIN  web/0.3.4/i/fancybox/fancybox-y.png
  38. BIN  web/0.3.4/i/fancybox/fancybox.png
  39. BIN  web/0.3.4/i/gmailIcon.png
  40. BIN  web/0.3.4/i/loader-w.gif
  41. BIN  web/0.3.4/i/panel/f1accounts.png
  42. BIN  web/0.3.4/i/panel/f1panel.png
  43. BIN  web/0.3.4/i/panel/step-01.png
  44. BIN  web/0.3.4/i/panel/step-02.png
  45. BIN  web/0.3.4/i/panel/step-022.png
  46. BIN  web/0.3.4/i/panel/step-03.png
  47. BIN  web/0.3.4/i/screenshot_01.png
  48. BIN  web/0.3.4/i/shareIcon.png
  49. BIN  web/0.3.4/i/sprite.png
  50. BIN  web/0.3.4/i/step-01.png
  51. BIN  web/0.3.4/i/step-02.png
  52. BIN  web/0.3.4/i/step-03.png
  53. BIN  web/0.3.4/i/toolbar-button.png
  54. BIN  web/0.3.4/i/twitterIcon.png
  55. +172 0 web/0.3.4/index.html
  56. +32 0 web/0.3.4/index.js
  57. +359 0 web/0.3.4/jquery.fancybox-1.3.4.css
  58. +57 0 web/0.3.4/play/ac.html
  59. BIN  web/0.3.4/play/designs/i/background.gif
  60. BIN  web/0.3.4/play/designs/i/bryanAvatar.jpg
  61. BIN  web/0.3.4/play/designs/i/linkdropiconfaded.png
  62. BIN  web/0.3.4/play/designs/i/settings.png
  63. +581 0 web/0.3.4/play/designs/nativeShare.css
  64. +112 0 web/0.3.4/play/designs/nativeShare.html
  65. +630 0 web/0.3.4/play/designs/neutralShare.css
  66. +120 0 web/0.3.4/play/designs/neutralShare.html
  67. +568 0 web/0.3.4/play/designs/share.css
  68. +113 0 web/0.3.4/play/designs/share.html
  69. BIN  web/0.3.4/play/designs/sidebar/i/sprite.png
  70. BIN  web/0.3.4/play/designs/sidebar/i/thumb.jpg
  71. +231 0 web/0.3.4/play/designs/sidebar/index.html
  72. +103 0 web/0.3.4/play/designs/sidebar/js/init.js
  73. +108 0 web/0.3.4/play/designs/sidebar/js/jquery.textOverflow.js
  74. +625 0 web/0.3.4/play/designs/sidebar/style.css
  75. +152 0 web/0.3.4/play/scratch/send/index.html
  76. +481 0 web/0.3.4/rdapi/f/StayPuft/COPYING.LIB
  77. +35 0 web/0.3.4/rdapi/f/StayPuft/README.txt
  78. BIN  web/0.3.4/rdapi/f/StayPuft/StayPuft.ttf
  79. BIN  web/0.3.4/rdapi/i/2709984325_f5554afd53_o2.jpeg
  80. +402 0 web/0.3.4/rdapi/index.css
  81. +240 0 web/0.3.4/rdapi/index.html
  82. +504 0 web/0.3.4/rdapi/scripts/index.js
  83. +2 0  web/0.3.4/robots.txt
  84. +241 0 web/0.3.4/scripts/AutoComplete.js
  85. +1 0  web/0.3.4/scripts/AutoCompleteRefresh.html
  86. +243 0 web/0.3.4/scripts/Contacts.js
  87. +133 0 web/0.3.4/scripts/ContactsEmail.js
  88. +61 0 web/0.3.4/scripts/ContactsTwitter.js
  89. +83 0 web/0.3.4/scripts/Select.css
  90. +9 0 web/0.3.4/scripts/Select.html
  91. +206 0 web/0.3.4/scripts/Select.js
  92. +67 0 web/0.3.4/scripts/TextCounter.js
  93. +404 0 web/0.3.4/scripts/accounts.js
  94. +147 0 web/0.3.4/scripts/blade/Widget.js
  95. +38 0 web/0.3.4/scripts/blade/array.js
  96. +96 0 web/0.3.4/scripts/blade/defer.js
  97. +227 0 web/0.3.4/scripts/blade/dispatch.js
  98. +58 0 web/0.3.4/scripts/blade/fn.js
  99. +858 0 web/0.3.4/scripts/blade/jig.js
  100. +128 0 web/0.3.4/scripts/blade/object.js
  101. +101 0 web/0.3.4/scripts/blade/url.js
  102. +173 0 web/0.3.4/scripts/cards.js
  103. +81 0 web/0.3.4/scripts/dispatch.js
  104. +61 0 web/0.3.4/scripts/dotCompare.js
  105. +174 0 web/0.3.4/scripts/fancyzoom.js
  106. +128 0 web/0.3.4/scripts/friendly.js
  107. +65 0 web/0.3.4/scripts/hashDispatch.js
  108. +1 0  web/0.3.4/scripts/iscroll-min.js
  109. +172 0 web/0.3.4/scripts/isoDate.js
  110. +68 0 web/0.3.4/scripts/jquery-ui-1.8.6.custom.min.js
  111. +404 0 web/0.3.4/scripts/jquery-ui-1.8.7.min.js
  112. +123 0 web/0.3.4/scripts/jquery.colorFade.js
  113. +91 0 web/0.3.4/scripts/jquery.cookie.js
  114. +205 0 web/0.3.4/scripts/jquery.easing.1.3.js
  115. +1,156 0 web/0.3.4/scripts/jquery.fancybox-1.3.4.js
  116. +308 0 web/0.3.4/scripts/jquery.masonry.js
  117. +108 0 web/0.3.4/scripts/jquery.textOverflow.js
  118. +486 0 web/0.3.4/scripts/jquery.tmpl.js
  119. +334 0 web/0.3.4/scripts/jquery.vgrid.0.1.5.js
  120. +2 0  web/0.3.4/scripts/jqueryStub.js
  121. +7 0 web/0.3.4/scripts/json2.js
  122. +381 0 web/0.3.4/scripts/md5.js
  123. +94 0 web/0.3.4/scripts/oauth.js
  124. +104 0 web/0.3.4/scripts/placeholder.js
  125. +277 0 web/0.3.4/scripts/protovis/protovis-r3.2.js
  126. +244 0 web/0.3.4/scripts/rdapi.js
  127. +214 0 web/0.3.4/scripts/requireplugins-jquery.js
  128. +71 0 web/0.3.4/scripts/rssFeed.js
  129. +290 0 web/0.3.4/scripts/services.js
  130. +109 0 web/0.3.4/scripts/shareOptions.js
  131. +52 0 web/0.3.4/scripts/storage.js
  132. +8 0 web/0.3.4/scripts/templates/cardsHeader.html
  133. +741 0 web/0.3.4/scripts/webtrends.js
  134. +112 0 web/0.3.4/service/down.html
  135. BIN  web/0.3.4/service/favicon.png
  136. BIN  web/0.3.4/service/i/f1Logo.png
  137. +94 0 web/0.3.4/service/privacy.html
  138. +26 0 web/0.3.4/service/style.css
  139. +10 0 web/0.3.4/settings/build.js
  140. BIN  web/0.3.4/settings/i/LinkedIn_Logo16px.png
  141. BIN  web/0.3.4/settings/i/f1Logo.png
  142. BIN  web/0.3.4/settings/i/sprite.png
  143. BIN  web/0.3.4/settings/i/thumb.jpg
  144. +173 0 web/0.3.4/settings/index.html
  145. +99 0 web/0.3.4/settings/index.js
  146. +558 0 web/0.3.4/settings/style.css
  147. +10 0 web/0.3.4/share/build.js
  148. BIN  web/0.3.4/share/i/LinkedIn_Logo16px.png
  149. BIN  web/0.3.4/share/i/bug_b.png
  150. BIN  web/0.3.4/share/i/bug_w.png
  151. BIN  web/0.3.4/share/i/f1-icon-grey.png
  152. BIN  web/0.3.4/share/i/face2.png
  153. BIN  web/0.3.4/share/i/loader.gif
  154. BIN  web/0.3.4/share/i/sprite.png
  155. +226 0 web/0.3.4/share/index.html
  156. +139 0 web/0.3.4/share/index.js
  157. +12 0 web/0.3.4/share/panel/build.js
  158. BIN  web/0.3.4/share/panel/i/sprite.png
  159. BIN  web/0.3.4/share/panel/i/thumb.jpg
  160. +208 0 web/0.3.4/share/panel/index.html
  161. +540 0 web/0.3.4/share/panel/index.js
  162. +108 0 web/0.3.4/share/panel/js/jquery.textOverflow.js
  163. +62 0 web/0.3.4/share/panel/scripts/widgets/AccountPanel.html
  164. +435 0 web/0.3.4/share/panel/scripts/widgets/AccountPanel.js
  165. +58 0 web/0.3.4/share/panel/scripts/widgets/AccountPanelFaceBook.js
  166. +47 0 web/0.3.4/share/panel/scripts/widgets/AccountPanelLinkedIn.js
  167. +19 0 web/0.3.4/share/panel/scripts/widgets/DebugPanel.html
  168. +37 0 web/0.3.4/share/panel/scripts/widgets/DebugPanel.js
  169. +13 0 web/0.3.4/share/panel/scripts/widgets/PageInfo.html
  170. +78 0 web/0.3.4/share/panel/scripts/widgets/PageInfo.js
  171. +81 0 web/0.3.4/share/panel/scripts/widgets/jigFuncs.js
  172. +1,082 0 web/0.3.4/share/panel/style.css
  173. +1,038 0 web/0.3.4/share/share.css
  174. +82 0 web/0.3.4/share/testframe.html
  175. +48 0 web/0.3.4/stats/index.html
  176. +180 0 web/0.3.4/stats/index.js
  177. +339 0 web/0.3.4/style.css
  178. +3 3 web/dev/share/panel/scripts/widgets/PageInfo.js
4 production.ini
@@ -11,8 +11,8 @@ import = %(here)s/private.ini
11 11 smtp_server = localhost
12 12 error_email_from = paste@localhost
13 13
14   -oauth_failure = /0.3.3/auth.html#oauth_failure
15   -oauth_success = /0.3.3/auth.html#oauth_success
  14 +oauth_failure = /0.3.4/auth.html#oauth_failure
  15 +oauth_success = /0.3.4/auth.html#oauth_success
16 16
17 17 # Register with twitter at http://dev.twitter.com/apps/new
18 18 oauth.twitter.com.request = https://twitter.com/oauth/request_token
2  setup.py
@@ -28,7 +28,7 @@
28 28 use_setuptools()
29 29 from setuptools import setup, find_packages
30 30
31   -VERSION='0.3.3'
  31 +VERSION='0.3.4'
32 32
33 33 setup(
34 34 name='linkdrop',
4 staging.ini
@@ -11,8 +11,8 @@ import = %(here)s/private.ini
11 11 smtp_server = localhost
12 12 error_email_from = paste@localhost
13 13
14   -oauth_failure = /0.3.3/auth.html#oauth_failure
15   -oauth_success = /0.3.3/auth.html#oauth_success
  14 +oauth_failure = /0.3.4/auth.html#oauth_failure
  15 +oauth_success = /0.3.4/auth.html#oauth_success
16 16
17 17 # Register with twitter at http://dev.twitter.com/apps/new
18 18 oauth.twitter.com.request = https://twitter.com/oauth/request_token
323 web/0.3.4/auth.html
... ... @@ -0,0 +1,323 @@
  1 +<!DOCTYPE html>
  2 + <!-- ***** BEGIN LICENSE BLOCK *****
  3 + - Version: MPL 1.1
  4 + -
  5 + - The contents of this file are subject to the Mozilla Public License Version
  6 + - 1.1 (the "License"); you may not use this file except in compliance with
  7 + - the License. You may obtain a copy of the License at
  8 + - http://www.mozilla.org/MPL/
  9 + -
  10 + - Software distributed under the License is distributed on an "AS IS" basis,
  11 + - WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
  12 + - for the specific language governing rights and limitations under the
  13 + - License.
  14 + -
  15 + - The Original Code is Raindrop.
  16 + -
  17 + - The Initial Developer of the Original Code is
  18 + - Mozilla Messaging, Inc..
  19 + - Portions created by the Initial Developer are Copyright (C) 2009
  20 + - the Initial Developer. All Rights Reserved.
  21 + -
  22 + - Contributor(s):
  23 + - -->
  24 +
  25 +<html>
  26 +<head>
  27 + <title>Firefox Share OAuthorization</title>
  28 + <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
  29 +
  30 + <script src="/0.3.4/scripts/requireplugins-jquery.js" charset="utf-8"></script>
  31 + <style>
  32 + html, body {
  33 + background-color: #fff;
  34 + height: 100%;
  35 + color: #0A0A0A;
  36 + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  37 + font-size: 14px;
  38 + line-height: 21px;
  39 + overflow: hidden;
  40 + }
  41 +
  42 + .connecting {
  43 + margin-top: 60px;
  44 + text-align: center;
  45 + }
  46 +
  47 + .connecting img {
  48 + vertical-align: middle;
  49 + }
  50 +
  51 + .hidden {
  52 + display: none;
  53 + }
  54 +
  55 + .invisible {
  56 + visibility: hidden;
  57 + }
  58 +
  59 + #oauth {
  60 + background-color: #fff;
  61 + width: 100%;
  62 + position: absolute;
  63 + top: 50%;
  64 + left: 50%;
  65 + margin-left: -150px;
  66 + margin-top: -95px;
  67 + width: 300px;
  68 + background-image: url("/0.3.4/i/f1Logo.png");
  69 + background-position: center top;
  70 + background-repeat: no-repeat;
  71 + padding: 100px 0 0 0;
  72 + }
  73 +
  74 + #oauth .text {
  75 + display: block;
  76 + margin: 0 0 7px 0;
  77 + }
  78 +
  79 + #oauth .subtext {
  80 + margin-left: 7px;
  81 + color: #666666;
  82 + font-family: "Lucida Grande", Verdana, sans-serif;
  83 + font-size: 12px;
  84 + }
  85 +
  86 + .controls {
  87 + width: 300px;
  88 + }
  89 +
  90 + button {
  91 + height: 30px;
  92 + border-width: 1px 1px 1px 0;
  93 + border-style: solid;
  94 + border-color: #888;
  95 + cursor: pointer;
  96 + padding: 0 10px;
  97 +
  98 + -moz-border-radius: 0 2px 2px 0;
  99 + -webkit-border-radius: 0 2px 2px 0;
  100 + border-radius: 0 2px 2px 0;
  101 +
  102 + background-image: -moz-linear-gradient(center top , #fafafa 0%, #ddd 100%);
  103 + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #fafafa), color-stop(100%, #ddd));
  104 + }
  105 +
  106 + button:active {
  107 + -moz-box-shadow: 0 0 1px #666666 inset;
  108 + -webkit-box-shadow: 0 0 1px #666666 inset;
  109 + box-shadow: 0 0 1px #666666 inset;
  110 +
  111 + background-image: -moz-linear-gradient(center top , #eee 0%, #ccc 100%);
  112 + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #eee), color-stop(100%, #ccc));
  113 + }
  114 +
  115 + input {
  116 + border-width: 1px;
  117 + border-style: solid;
  118 + border-color: #888;
  119 + font-family: "Lucida Grande", Verdana, sans-serif;
  120 + font-size: 12px;
  121 + line-height: 18px;
  122 + padding: 3px;
  123 + margin: 0;
  124 +
  125 + -moz-border-radius: 2px 0 0 2px;
  126 + -moz-box-shadow:0 3px 3px -3px rgba(0, 0, 0, 0.25) inset, 0 1px 0 #fff;
  127 + }
  128 +
  129 + input:focus {
  130 + -moz-box-shadow: 0 0 0 3px rgba(0, 162, 255, 0.25) inset, 0 1px 0 #fff;
  131 + }
  132 +
  133 + input.google {
  134 + background-image: url("/0.3.4/i/sprite.png");
  135 + background-position: 5px -159px;
  136 + background-repeat: no-repeat;
  137 + padding: 0 0 0 26px;
  138 + }
  139 +
  140 + .hbox {
  141 + display: -webkit-box;
  142 + -webkit-box-orient: horizontal;
  143 + -webkit-box-align: stretch;
  144 +
  145 + display: -moz-box;
  146 + -moz-box-orient: horizontal;
  147 + -moz-box-align: stretch;
  148 +
  149 + display: box;
  150 + box-orient: horizontal;
  151 + box-align: stretch;
  152 + }
  153 +
  154 + .hbox > * {
  155 + -webkit-box-flex: 0;
  156 + -moz-box-flex: 0;
  157 + box-flex: 0;
  158 + display: block;
  159 + }
  160 +
  161 + .vbox {
  162 + display: -webkit-box;
  163 + -webkit-box-orient: vertical;
  164 + -webkit-box-align: stretch;
  165 +
  166 + display: -moz-box;
  167 + -moz-box-orient: vertical;
  168 + -moz-box-align: stretch;
  169 +
  170 + display: box;
  171 + box-orient: vertical;
  172 + box-align: stretch;
  173 + }
  174 +
  175 + .vbox > * {
  176 + -webkit-box-flex: 0;
  177 + -moz-box-flex: 0;
  178 + box-flex: 0;
  179 + display: block;
  180 + }
  181 +
  182 + .spacer {
  183 + -webkit-box-flex: 1;
  184 + -moz-box-flex: 1;
  185 + box-flex: 1;
  186 + }
  187 +
  188 + .reverse {
  189 + -webkit-box-direction: reverse;
  190 + -moz-box-direction: reverse;
  191 + box-direction: reverse;
  192 + }
  193 +
  194 + .boxFlex0 {
  195 + -webkit-box-flex: 0;
  196 + -moz-box-flex: 0;
  197 + box-flex: 0;
  198 + }
  199 +
  200 + .boxFlex1, .boxFlex {
  201 + -webkit-box-flex: 1;
  202 + -moz-box-flex: 1;
  203 + box-flex: 1;
  204 + }
  205 +
  206 + .boxFlex2 {
  207 + -webkit-box-flex: 2;
  208 + -moz-box-flex: 2;
  209 + box-flex: 2;
  210 + }
  211 +
  212 + .boxGroup1 {
  213 + -webkit-box-flex-group: 1;
  214 + -moz-box-flex-group: 1;
  215 + box-flex-group: 1;
  216 + }
  217 +
  218 + .boxGroup2 {
  219 + -webkit-box-flex-group: 2;
  220 + -moz-box-flex-group: 2;
  221 + box-flex-group: 2;
  222 + }
  223 +
  224 + .start {
  225 + -webkit-box-pack: start;
  226 + -moz-box-pack: start;
  227 + box-pack: start;
  228 + }
  229 +
  230 + .end {
  231 + -webkit-box-pack: end;
  232 + -moz-box-pack: end;
  233 + box-pack: end;
  234 + }
  235 +
  236 + .center {
  237 + -webkit-box-pack: center;
  238 + -moz-box-pack: center;
  239 + box-pack: center;
  240 + }
  241 +
  242 + </style>
  243 + <script>
  244 + require(["require", "jquery", "blade/url", "services", "jquery.cookie"],
  245 + function (require, $, url, services) {
  246 + var target = window.location.href.split('#')[1];
  247 + if (target && (target === 'oauth_success' || target === 'oauth_failure')) {
  248 +
  249 + //TODO: ideally lock down the domain be location.hostname, but
  250 + //a problem for 127 addresses?
  251 + // XXX hacky way to handle fennec, since we didn't open a window,
  252 + // catch the exception when using window.opener and redirect
  253 + var data = {
  254 + target: target,
  255 + account: JSON.parse($.cookie("account_tokens"))
  256 + };
  257 + window.opener.postMessage(JSON.stringify(data), '*');
  258 + // clear the cookie, we no longer want it around
  259 + $.cookie("account_tokens", "", {"path": "/"});
  260 + window.close();
  261 + }
  262 +
  263 + var search = window.location.href.split('?')[1];
  264 + if (search) {
  265 + search = search.split('#')[0];
  266 +
  267 + var args = url.queryToObject(search),
  268 + domain = args.domain;
  269 +
  270 + $(function () {
  271 + if (domain) {
  272 + // add a force login param to the form if asked.
  273 + if (args.forceLogin) {
  274 + var forceLogin = services.domains[domain].forceLogin;
  275 + if (forceLogin) {
  276 + $('<input type="hidden" name="' +
  277 + forceLogin.name +
  278 + '" value="' + forceLogin.value + '">').appendTo('[name="authForm"]');
  279 + }
  280 + }
  281 +
  282 + $("#domain").attr("value", args['domain']);
  283 +
  284 + if (args['domain'] == 'googleapps.com') {
  285 + // show UI for googleapp
  286 + $('#oauth').removeClass('hidden');
  287 + $('#message').addClass('hidden');
  288 + $('#submitbtn').click(function (evt) {
  289 + $('#oauth').addClass('hidden');
  290 + $('#message').removeClass('hidden');
  291 + document.authForm.submit();
  292 + });
  293 + } else {
  294 + document.authForm.submit();
  295 + }
  296 + }
  297 + });
  298 + }
  299 + });
  300 + </script>
  301 +</head>
  302 +<body class="settings">
  303 +
  304 + <div id="oauth" class="authorize hidden">
  305 + <form name="authForm" action="/api/account/authorize" method="POST">
  306 + <input type="hidden" name="domain" id="domain" value="">
  307 + <span class="text">Enter your Google Apps domain</span>
  308 + <div class="controls hbox">
  309 + <input class="boxFlex google" name="openid_identifier" id="openid_identifier" value="">
  310 + <input class="boxFlex google" type="hidden" name="end_point_success" value="/0.3.4/auth.html#oauth_success">
  311 + <input class="boxFlex google" type="hidden" name="end_point_auth_failure" value="/0.3.4/auth.html#oauth_failure">
  312 + <button id='submitbtn' type="submit">submit</button>
  313 + </div>
  314 + <span class="subtext">ex: yourappdomain.com</span>
  315 + </form>
  316 +
  317 + </div>
  318 + <div style="clear: both"/>
  319 + </div>
  320 +
  321 + <div id='message' class="connecting"><img src="i/loader-w.gif"> connecting...</div>
  322 +</body>
  323 +</html>
8 web/0.3.4/blank.html
... ... @@ -0,0 +1,8 @@
  1 +<!DOCTYPE html>
  2 +<html>
  3 +<head>
  4 + <title></title>
  5 +</head>
  6 +<body>
  7 +</body>
  8 +</html>
10 web/0.3.4/build.js
... ... @@ -0,0 +1,10 @@
  1 +({
  2 + baseUrl: "scripts/",
  3 + paths: {
  4 + "index": "../index",
  5 + "jquery": "requireplugins-jquery"
  6 + },
  7 + name: "index",
  8 + exclude: ['jquery'],
  9 + out: './index.js'
  10 +})
BIN  web/0.3.4/favicon.ico
Binary file not shown
BIN  web/0.3.4/favicon.png
BIN  web/0.3.4/i/LinkedIn_Logo16px.png
BIN  web/0.3.4/i/check.png
BIN  web/0.3.4/i/cornerBottomLeft.png
BIN  web/0.3.4/i/cornerBottomRight.png
BIN  web/0.3.4/i/cornerTopLeft.png
BIN  web/0.3.4/i/cornerTopRight.png
BIN  web/0.3.4/i/f1Icon.png
BIN  web/0.3.4/i/f1Logo.png
BIN  web/0.3.4/i/f1LogoVert.png
BIN  web/0.3.4/i/facebookIcon.png
BIN  web/0.3.4/i/fancybox/blank.gif
BIN  web/0.3.4/i/fancybox/fancy_close.png
BIN  web/0.3.4/i/fancybox/fancy_loading.png
BIN  web/0.3.4/i/fancybox/fancy_nav_left.png
BIN  web/0.3.4/i/fancybox/fancy_nav_right.png
BIN  web/0.3.4/i/fancybox/fancy_shadow_e.png
BIN  web/0.3.4/i/fancybox/fancy_shadow_n.png
BIN  web/0.3.4/i/fancybox/fancy_shadow_ne.png
BIN  web/0.3.4/i/fancybox/fancy_shadow_nw.png
BIN  web/0.3.4/i/fancybox/fancy_shadow_s.png
BIN  web/0.3.4/i/fancybox/fancy_shadow_se.png
BIN  web/0.3.4/i/fancybox/fancy_shadow_sw.png
BIN  web/0.3.4/i/fancybox/fancy_shadow_w.png
BIN  web/0.3.4/i/fancybox/fancy_title_left.png
BIN  web/0.3.4/i/fancybox/fancy_title_main.png
BIN  web/0.3.4/i/fancybox/fancy_title_over.png
BIN  web/0.3.4/i/fancybox/fancy_title_right.png
BIN  web/0.3.4/i/fancybox/fancybox-x.png
BIN  web/0.3.4/i/fancybox/fancybox-y.png
BIN  web/0.3.4/i/fancybox/fancybox.png
BIN  web/0.3.4/i/gmailIcon.png
BIN  web/0.3.4/i/loader-w.gif
BIN  web/0.3.4/i/panel/f1accounts.png
BIN  web/0.3.4/i/panel/f1panel.png
BIN  web/0.3.4/i/panel/step-01.png
BIN  web/0.3.4/i/panel/step-02.png
BIN  web/0.3.4/i/panel/step-022.png
BIN  web/0.3.4/i/panel/step-03.png
BIN  web/0.3.4/i/screenshot_01.png
BIN  web/0.3.4/i/shareIcon.png
BIN  web/0.3.4/i/sprite.png
BIN  web/0.3.4/i/step-01.png
BIN  web/0.3.4/i/step-02.png
BIN  web/0.3.4/i/step-03.png
BIN  web/0.3.4/i/toolbar-button.png
BIN  web/0.3.4/i/twitterIcon.png
172 web/0.3.4/index.html
... ... @@ -0,0 +1,172 @@
  1 + <!-- ***** BEGIN LICENSE BLOCK *****
  2 + - Version: MPL 1.1
  3 + -
  4 + - The contents of this file are subject to the Mozilla Public License Version
  5 + - 1.1 (the "License"); you may not use this file except in compliance with
  6 + - the License. You may obtain a copy of the License at
  7 + - http://www.mozilla.org/MPL/
  8 + -
  9 + - Software distributed under the License is distributed on an "AS IS" basis,
  10 + - WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
  11 + - for the specific language governing rights and limitations under the
  12 + - License.
  13 + -
  14 + - The Original Code is Raindrop.
  15 + -
  16 + - The Initial Developer of the Original Code is
  17 + - Mozilla Messaging, Inc..
  18 + - Portions created by the Initial Developer are Copyright (C) 2009
  19 + - the Initial Developer. All Rights Reserved.
  20 + -
  21 + - Contributor(s):
  22 + - -->
  23 +<!DOCTYPE html>
  24 +<html xmlns:og="http://opengraphprotocol.org/schema/"
  25 + xmlns:fb="http://www.facebook.com/2008/fbml">
  26 +<head>
  27 + <link rel="stylesheet" type="text/css" href="/0.3.4/style.css">
  28 + <link rel="stylesheet" type="text/css" href="/0.3.4/jquery.fancybox-1.3.4.css">
  29 + <link rel="stylesheet" type="text/css" href="resource://ffshare/chrome/skin/web/installed.css">
  30 +
  31 + <title>Mozilla F1</title>
  32 + <script type="text/javascript" data-main="/0.3.4/index.js" src="/0.3.4/scripts/requireplugins-jquery.js"></script>
  33 + <link rel="icon" type="image/x-icon" href="/0.3.4/favicon.png" />
  34 +
  35 + <!-- https://github.com/mozilla/f1/wiki/Page-Meta-Properties -->
  36 +
  37 + <link rel="shortlink" href="http://bit.ly/mozillaF1"/>
  38 + <link rel="canonical" href="http://f1.mozillamessaging.com/"/>
  39 +
  40 + <meta property="og:title" content="Mozilla F1"/>
  41 + <meta property="og:type" content="website"/>
  42 + <meta property="og:url" content="http://f1.mozillamessaging.com/"/>
  43 + <meta property="og:image" content="http://f1.mozillamessaging.com/i/f1LogoVert.png"/>
  44 + <meta property="og:site_name" content="Mozilla F1"/>
  45 + <meta property="og:description"
  46 + content="F1 is a browser extension that allows you to share links in a
  47 + fast and fun way. Share links from within the browser, from any
  48 + webpage, using the same services you already know and love."/>
  49 +
  50 + <meta property="fb:app_id" content="173375079345318,146290642084944"/>
  51 +
  52 + <meta name="title" content="Mozilla F1"/>
  53 + <meta name="description"
  54 + content="F1 is a browser extension that allows you to share links in a
  55 + fast and fun way. Share links from within the browser, from any
  56 + webpage, using the same services you already know and love."/>
  57 +
  58 + <meta name="application-url" content="http://f1.mozillamessaging.com/"/>
  59 +
  60 + <link rel="image_src" href="http://f1.mozillamessaging.com/i/f1LogoVert.png"/>
  61 +
  62 +</head>
  63 +<body>
  64 + <div id="wrapper">
  65 + <div id="header" class="row">
  66 + <div class="c2 logo">
  67 + / <a href="http://mozillalabs.com/messaging/">F1 Blog &raquo;</a>
  68 + </div>
  69 + <div class="c1 dl">
  70 + <button id="downloadFF4" class="download downloadXpi">
  71 + Install Mozilla F1
  72 + <span class="meta">available for Firefox 4 beta</span>
  73 + </button>
  74 + <button id="firefox" class="download">
  75 + Get Firefox 4 beta to use <br>this add-on
  76 + </button>
  77 + <a id="no36" href="#info36">*Firefox 3.6 is no longer supported</a>
  78 + <div id="noButtonFF4">
  79 + <img src="/0.3.4/i/check.png"> status: installed
  80 + </div>
  81 + </div>
  82 + </div>
  83 + <div class="row headline">
  84 + <div class="c1 description">
  85 + <h1>Share links fast.</h1>
  86 + <h2>So, what&rsquo;s F1?</h2>
  87 + F1 is a browser extension that allows you to share links in a fast and fun way. Share links from within the browser, from any webpage, using the same services you already know and love. Mozilla F1 is made by Mozilla Messaging.
  88 + <button class="fancybox">watch demo</button>
  89 + </div>
  90 + <div class="c2">
  91 + <img src="/i/panel/f1panel.png">
  92 + </div>
  93 + </div>
  94 +
  95 + <div class="row">
  96 + <hr>
  97 + <div class="c2 description">
  98 + <img src="/i/panel/f1accounts.png">
  99 + </div>
  100 + <div class="c1 description">
  101 + <h2>Share with your<br> favorite services</h2>
  102 + With support for Facebook, Twitter, Gmail, Google Apps, Yahoo Mail and LinkedIn, we have your favorite services covered&mdash;and we're adding more services with every release.
  103 + </div>
  104 + </div>
  105 + <div class="row about">
  106 + <hr>
  107 + <div class="c3 description">
  108 + <h2>Once you've installed F1 sharing is as easy as...</h2>
  109 + </div>
  110 + <div class="c1 description steps">
  111 + <span class="step">1</span> Hit the F1 icon in the URL bar
  112 + <img src="i/panel/step-01.png">
  113 + </div>
  114 + <div class="c1 description steps">
  115 + <span class="step">2</span> Choose your service in the menu
  116 + <img src="i/panel/step-022.png">
  117 + </div>
  118 + <div class="c1 description steps">
  119 + <span class="step">3</span> Express yourself and hit share!
  120 + <img src="i/panel/step-03.png">
  121 + </div>
  122 + </div>
  123 + <div id="info36" class="row">
  124 + <div class="c3">
  125 + <strong>*Firefox 3.6 support</strong>: F1 uses some advanced technology
  126 + and UI capabilities that are not possible in Firefox 3.6 and earlier.
  127 + If you installed the previous version of F1 that works with Firefox 3.6,
  128 + it will continue to work while Firefox 4 is in beta. Once Firefox 4 is
  129 + released, the older 3.6 compatible extension will be phased out.
  130 + </div>
  131 + </div>
  132 + <div id="footer" class="row">
  133 + <div class="c3">
  134 + <a href="http://mozillamessaging.com">Mozilla Messaging 2011</a> | <a href="/0.3.4/service/privacy.html">Privacy Policy</a>
  135 + </div>
  136 + </div>
  137 + </div>
  138 +
  139 + <iframe id="installFrame" src="/0.3.4/blank.html"></iframe>
  140 +
  141 + <!-- START OF SmartSource Data Collector TAG -->
  142 + <!-- Copyright (c) 1996-2011 WebTrends Inc. All rights reserved. -->
  143 + <!-- Version: 9.3.0 -->
  144 + <!-- Tag Builder Version: 3.1 -->
  145 + <!-- Created: 3/15/2011 5:10:56 PM -->
  146 + <script src="/0.3.4/scripts/webtrends.js" type="text/javascript"></script>
  147 + <!-- ----------------------------------------------------------------------------------- -->
  148 + <!-- Warning: The two script blocks below must remain inline. Moving them to an external -->
  149 + <!-- JavaScript include file can cause serious problems with cross-domain tracking. -->
  150 + <!-- ----------------------------------------------------------------------------------- -->
  151 + <script type="text/javascript">
  152 + //<![CDATA[
  153 + var _tag=new WebTrends();
  154 + _tag.dcsGetId();
  155 + //]]>
  156 + </script>
  157 + <script type="text/javascript">
  158 + //<![CDATA[
  159 + _tag.dcsCustom=function(){
  160 + // Add custom parameters here.
  161 + //_tag.DCSext.param_name=param_value;
  162 + }
  163 + _tag.dcsCollect();
  164 + //]]>
  165 + </script>
  166 + <noscript>
  167 + <div><img alt="DCSIMG" id="DCSIMG" width="1" height="1" src="http://statse.webtrendslive.com/dcsjd66bq10000k73ngwoin8k_7d1l/njs.gif?dcsuri=/nojavascript&amp;WT.js=No&amp;WT.tv=9.3.0&amp;WT.dcssip=www.mozillamessaging.com"/></div>
  168 + </noscript>
  169 + <!-- END OF SmartSource Data Collector TAG -->
  170 +
  171 +</body>
  172 +</html>
32 web/0.3.4/index.js
... ... @@ -0,0 +1,32 @@
  1 +define("hashDispatch",[],function(){return function(b){function g(){var i=location.href.split("#")[1]||"_default",l,f;f=i.indexOf(":");if(f!==-1){l=i.substring(f+1,i.length);i=i.substring(0,f)}if(i in b)b[i](l);else b._catchAll&&b._catchAll(i,l)}g();window.addEventListener("hashchange",g,false)}});
  2 +(function(b){var g,i,l,f,x,m,D,o,A,B,r=0,e={},p=[],q=0,d={},n=[],F=null,u=new Image,J=/\.(jpg|gif|png|bmp|jpeg)(.*)?$/i,W=/[^\.]\.(swf)\s*$/i,K,L=1,z=0,v="",s,k,j=false,C=b.extend(b("<div/>")[0],{prop:0}),M=b.browser.msie&&b.browser.version<7&&!window.XMLHttpRequest,N=function(){i.hide();u.onerror=u.onload=null;F&&F.abort();g.empty()},O=function(){if(false===e.onError(p,r,e)){i.hide();j=false}else{e.titleShow=false;e.width="auto";e.height="auto";g.html('<p id="fancybox-error">The requested content cannot be loaded.<br />Please try again later.</p>');
  3 +E()}},I=function(){var a=p[r],c,h,t,G,P,w;N();e=b.extend({},b.fn.fancybox.defaults,typeof b(a).data("fancybox")=="undefined"?e:b(a).data("fancybox"));w=e.onStart(p,r,e);if(w===false)j=false;else{if(typeof w=="object")e=b.extend(e,w);t=e.title||(a.nodeName?b(a).attr("title"):a.title)||"";if(a.nodeName&&!e.orig)e.orig=b(a).children("img:first").length?b(a).children("img:first"):b(a);if(t===""&&e.orig&&e.titleFromAlt)t=e.orig.attr("alt");c=e.href||(a.nodeName?b(a).attr("href"):a.href)||null;if(/^(?:javascript)/i.test(c)||
  4 +c=="#")c=null;if(e.type){h=e.type;if(!c)c=e.content}else if(e.content)h="html";else if(c)h=c.match(J)?"image":c.match(W)?"swf":b(a).hasClass("iframe")?"iframe":c.indexOf("#")===0?"inline":"ajax";if(h){if(h=="inline"){a=c.substr(c.indexOf("#"));h=b(a).length>0?"inline":"ajax"}e.type=h;e.href=c;e.title=t;if(e.autoDimensions)if(e.type=="html"||e.type=="inline"||e.type=="ajax"){e.width="auto";e.height="auto"}else e.autoDimensions=false;if(e.modal){e.overlayShow=true;e.hideOnOverlayClick=false;e.hideOnContentClick=
  5 +false;e.enableEscapeButton=false;e.showCloseButton=false}e.padding=parseInt(e.padding,10);e.margin=parseInt(e.margin,10);g.css("padding",e.padding+e.margin);b(".fancybox-inline-tmp").unbind("fancybox-cancel").bind("fancybox-change",function(){b(this).replaceWith(m.children())});switch(h){case "html":g.html(e.content);E();break;case "inline":if(b(a).parent().is("#fancybox-content")===true){j=false;return}b('<div class="fancybox-inline-tmp" />').hide().insertBefore(b(a)).bind("fancybox-cleanup",function(){b(this).replaceWith(m.children())}).bind("fancybox-cancel",
  6 +function(){b(this).replaceWith(g.children())});b(a).appendTo(g);E();break;case "image":j=false;b.fancybox.showActivity();u=new Image;u.onerror=function(){O()};u.onload=function(){j=true;u.onerror=u.onload=null;X()};u.src=c;break;case "swf":e.scrolling="no";G='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="'+e.width+'" height="'+e.height+'"><param name="movie" value="'+c+'"></param>';P="";b.each(e.swf,function(y,H){G+='<param name="'+y+'" value="'+H+'"></param>';P+=" "+y+'="'+
  7 +H+'"'});G+='<embed src="'+c+'" type="application/x-shockwave-flash" width="'+e.width+'" height="'+e.height+'"'+P+"></embed></object>";g.html(G);E();break;case "ajax":j=false;b.fancybox.showActivity();e.ajax.win=e.ajax.success;F=b.ajax(b.extend({},e.ajax,{url:c,data:e.ajax.data||{},error:function(y){y.status>0&&O()},success:function(y,H,Q){if((typeof Q=="object"?Q:F).status==200){if(typeof e.ajax.win=="function"){w=e.ajax.win(c,y,H,Q);if(w===false){i.hide();return}else if(typeof w=="string"||typeof w==
  8 +"object")y=w}g.html(y);E()}}}));break;case "iframe":R();break}}else O()}},E=function(){var a=e.width,c=e.height;a=a.toString().indexOf("%")>-1?parseInt((b(window).width()-e.margin*2)*parseFloat(a)/100,10)+"px":a=="auto"?"auto":a+"px";c=c.toString().indexOf("%")>-1?parseInt((b(window).height()-e.margin*2)*parseFloat(c)/100,10)+"px":c=="auto"?"auto":c+"px";g.wrapInner('<div style="width:'+a+";height:"+c+";overflow: "+(e.scrolling=="auto"?"auto":e.scrolling=="yes"?"scroll":"hidden")+';position:relative;"></div>');
  9 +e.width=g.width();e.height=g.height();R()},X=function(){e.width=u.width;e.height=u.height;b("<img />").attr({id:"fancybox-img",src:u.src,alt:e.title}).appendTo(g);R()},R=function(){var a,c;i.hide();if(f.is(":visible")&&false===d.onCleanup(n,q,d)){b.event.trigger("fancybox-cancel");j=false}else{j=true;b(m.add(l)).unbind();b(window).unbind("resize.fb scroll.fb");b(document).unbind("keydown.fb");f.is(":visible")&&d.titlePosition!=="outside"&&f.css("height",f.height());n=p;q=r;d=e;if(d.overlayShow){l.css({"background-color":d.overlayColor,
  10 +opacity:d.overlayOpacity,cursor:d.hideOnOverlayClick?"pointer":"auto",height:b(document).height()});if(!l.is(":visible")){M&&b("select:not(#fancybox-tmp select)").filter(function(){return this.style.visibility!=="hidden"}).css({visibility:"hidden"}).one("fancybox-cleanup",function(){this.style.visibility="inherit"});l.show()}}else l.hide();k=Y();Z();if(f.is(":visible")){b(D.add(A).add(B)).hide();a=f.position();s={top:a.top,left:a.left,width:f.width(),height:f.height()};c=s.width==k.width&&s.height==
  11 +k.height;m.fadeTo(d.changeFade,0.3,function(){var h=function(){m.html(g.contents()).fadeTo(d.changeFade,1,S)};b.event.trigger("fancybox-change");m.empty().removeAttr("filter").css({"border-width":d.padding,width:k.width-d.padding*2,height:e.autoDimensions?"auto":k.height-z-d.padding*2});if(c)h();else{C.prop=0;b(C).animate({prop:1},{duration:d.changeSpeed,easing:d.easingChange,step:T,complete:h})}})}else{f.removeAttr("style");m.css("border-width",d.padding);if(d.transitionIn=="elastic"){s=V();m.html(g.contents());
  12 +f.show();if(d.opacity)k.opacity=0;C.prop=0;b(C).animate({prop:1},{duration:d.speedIn,easing:d.easingIn,step:T,complete:S})}else{d.titlePosition=="inside"&&z>0&&o.show();m.css({width:k.width-d.padding*2,height:e.autoDimensions?"auto":k.height-z-d.padding*2}).html(g.contents());f.css(k).fadeIn(d.transitionIn=="none"?0:d.speedIn,S)}}}},$=function(a){if(a&&a.length){if(d.titlePosition=="float")return'<table id="fancybox-title-float-wrap" cellpadding="0" cellspacing="0"><tr><td id="fancybox-title-float-left"></td><td id="fancybox-title-float-main">'+
  13 +a+'</td><td id="fancybox-title-float-right"></td></tr></table>';return'<div id="fancybox-title-'+d.titlePosition+'">'+a+"</div>"}return false},Z=function(){v=d.title||"";z=0;o.empty().removeAttr("style").removeClass();if(d.titleShow!==false){v=b.isFunction(d.titleFormat)?d.titleFormat(v,n,q,d):$(v);if(!(!v||v==="")){o.addClass("fancybox-title-"+d.titlePosition).html(v).appendTo("body").show();switch(d.titlePosition){case "inside":o.css({width:k.width-d.padding*2,marginLeft:d.padding,marginRight:d.padding});
  14 +z=o.outerHeight(true);o.appendTo(x);k.height+=z;break;case "over":o.css({marginLeft:d.padding,width:k.width-d.padding*2,bottom:d.padding}).appendTo(x);break;case "float":o.css("left",parseInt((o.width()-k.width-40)/2,10)*-1).appendTo(f);break;default:o.css({width:k.width-d.padding*2,paddingLeft:d.padding,paddingRight:d.padding}).appendTo(f);break}}}o.hide()},aa=function(){if(d.enableEscapeButton||d.enableKeyboardNav)b(document).bind("keydown.fb",function(a){if(a.keyCode==27&&d.enableEscapeButton){a.preventDefault();
  15 +b.fancybox.close()}else if((a.keyCode==37||a.keyCode==39)&&d.enableKeyboardNav&&a.target.tagName!=="INPUT"&&a.target.tagName!=="TEXTAREA"&&a.target.tagName!=="SELECT"){a.preventDefault();b.fancybox[a.keyCode==37?"prev":"next"]()}});if(d.showNavArrows){if(d.cyclic&&n.length>1||q!==0)A.show();if(d.cyclic&&n.length>1||q!=n.length-1)B.show()}else{A.hide();B.hide()}},S=function(){if(!b.support.opacity){m.get(0).style.removeAttribute("filter");f.get(0).style.removeAttribute("filter")}e.autoDimensions&&
  16 +m.css("height","auto");f.css("height","auto");v&&v.length&&o.show();d.showCloseButton&&D.show();aa();d.hideOnContentClick&&m.bind("click",b.fancybox.close);d.hideOnOverlayClick&&l.bind("click",b.fancybox.close);b(window).bind("resize.fb",b.fancybox.resize);d.centerOnScroll&&b(window).bind("scroll.fb",b.fancybox.center);if(d.type=="iframe")b('<iframe id="fancybox-frame" name="fancybox-frame'+(new Date).getTime()+'" frameborder="0" hspace="0" '+(b.browser.msie?'allowtransparency="true""':"")+' scrolling="'+
  17 +e.scrolling+'" src="'+d.href+'"></iframe>').appendTo(m);f.show();j=false;b.fancybox.center();d.onComplete(n,q,d);ba()},ba=function(){var a,c;if(n.length-1>q){a=n[q+1].href;if(typeof a!=="undefined"&&a.match(J)){c=new Image;c.src=a}}if(q>0){a=n[q-1].href;if(typeof a!=="undefined"&&a.match(J)){c=new Image;c.src=a}}},T=function(a){var c={width:parseInt(s.width+(k.width-s.width)*a,10),height:parseInt(s.height+(k.height-s.height)*a,10),top:parseInt(s.top+(k.top-s.top)*a,10),left:parseInt(s.left+(k.left-
  18 +s.left)*a,10)};if(typeof k.opacity!=="undefined")c.opacity=a<0.5?0.5:a;f.css(c);m.css({width:c.width-d.padding*2,height:c.height-z*a-d.padding*2})},U=function(){return[b(window).width()-d.margin*2,b(window).height()-d.margin*2,b(document).scrollLeft()+d.margin,b(document).scrollTop()+d.margin]},Y=function(){var a=U(),c={},h=d.autoScale,t=d.padding*2;c.width=d.width.toString().indexOf("%")>-1?parseInt(a[0]*parseFloat(d.width)/100,10):d.width+t;c.height=d.height.toString().indexOf("%")>-1?parseInt(a[1]*
  19 +parseFloat(d.height)/100,10):d.height+t;if(h&&(c.width>a[0]||c.height>a[1]))if(e.type=="image"||e.type=="swf"){h=d.width/d.height;if(c.width>a[0]){c.width=a[0];c.height=parseInt((c.width-t)/h+t,10)}if(c.height>a[1]){c.height=a[1];c.width=parseInt((c.height-t)*h+t,10)}}else{c.width=Math.min(c.width,a[0]);c.height=Math.min(c.height,a[1])}c.top=parseInt(Math.max(a[3]-20,a[3]+(a[1]-c.height-40)*0.5),10);c.left=parseInt(Math.max(a[2]-20,a[2]+(a[0]-c.width-40)*0.5),10);return c},ca=function(a){var c=a.offset();
  20 +c.top+=parseInt(a.css("paddingTop"),10)||0;c.left+=parseInt(a.css("paddingLeft"),10)||0;c.top+=parseInt(a.css("border-top-width"),10)||0;c.left+=parseInt(a.css("border-left-width"),10)||0;c.width=a.width();c.height=a.height();return c},V=function(){var a=e.orig?b(e.orig):false,c={};if(a&&a.length){a=ca(a);c={width:a.width+d.padding*2,height:a.height+d.padding*2,top:a.top-d.padding-20,left:a.left-d.padding-20}}else{a=U();c={width:d.padding*2,height:d.padding*2,top:parseInt(a[3]+a[1]*0.5,10),left:parseInt(a[2]+
  21 +a[0]*0.5,10)}}return c},da=function(){if(i.is(":visible")){b("div",i).css("top",L*-40+"px");L=(L+1)%12}else clearInterval(K)};b.fn.fancybox=function(a){if(!b(this).length)return this;b(this).data("fancybox",b.extend({},a,b.metadata?b(this).metadata():{})).unbind("click.fb").bind("click.fb",function(c){c.preventDefault();if(!j){j=true;b(this).blur();p=[];r=0;c=b(this).attr("rel")||"";if(!c||c==""||c==="nofollow")p.push(this);else{p=b("a[rel="+c+"], area[rel="+c+"]");r=p.index(this)}I()}});return this};
  22 +b.fancybox=function(a,c){if(!j){j=true;c=typeof c!=="undefined"?c:{};p=[];r=parseInt(c.index,10)||0;if(b.isArray(a)){for(var h=0,t=a.length;h<t;h++)if(typeof a[h]=="object")b(a[h]).data("fancybox",b.extend({},c,a[h]));else a[h]=b({}).data("fancybox",b.extend({content:a[h]},c));p=jQuery.merge(p,a)}else{if(typeof a=="object")b(a).data("fancybox",b.extend({},c,a));else a=b({}).data("fancybox",b.extend({content:a},c));p.push(a)}if(r>p.length||r<0)r=0;I()}};b.fancybox.showActivity=function(){clearInterval(K);
  23 +i.show();K=setInterval(da,66)};b.fancybox.hideActivity=function(){i.hide()};b.fancybox.next=function(){return b.fancybox.pos(q+1)};b.fancybox.prev=function(){return b.fancybox.pos(q-1)};b.fancybox.pos=function(a){if(!j){a=parseInt(a);p=n;if(a>-1&&a<n.length){r=a;I()}else if(d.cyclic&&n.length>1){r=a>=n.length?0:n.length-1;I()}}};b.fancybox.cancel=function(){if(!j){j=true;b.event.trigger("fancybox-cancel");N();e.onCancel(p,r,e);j=false}};b.fancybox.close=function(){function a(){l.fadeOut("fast");o.empty().hide();
  24 +f.hide();b.event.trigger("fancybox-cleanup");m.empty();d.onClosed(n,q,d);n=e=[];q=r=0;d=e={};j=false}if(!(j||f.is(":hidden"))){j=true;if(d&&false===d.onCleanup(n,q,d))j=false;else{N();b(D.add(A).add(B)).hide();b(m.add(l)).unbind();b(window).unbind("resize.fb scroll.fb");b(document).unbind("keydown.fb");m.find("iframe").attr("src",M&&/^https/i.test(window.location.href||"")?"javascript:void(false)":"about:blank");d.titlePosition!=="inside"&&o.empty();f.stop();if(d.transitionOut=="elastic"){s=V();var c=
  25 +f.position();k={top:c.top,left:c.left,width:f.width(),height:f.height()};if(d.opacity)k.opacity=1;o.empty().hide();C.prop=1;b(C).animate({prop:0},{duration:d.speedOut,easing:d.easingOut,step:T,complete:a})}else f.fadeOut(d.transitionOut=="none"?0:d.speedOut,a)}}};b.fancybox.resize=function(){l.is(":visible")&&l.css("height",b(document).height());b.fancybox.center(true)};b.fancybox.center=function(a){var c,h;if(!j){h=a===true?1:0;c=U();!h&&(f.width()>c[0]||f.height()>c[1])||f.stop().animate({top:parseInt(Math.max(c[3]-
  26 +20,c[3]+(c[1]-m.height()-40)*0.5-d.padding)),left:parseInt(Math.max(c[2]-20,c[2]+(c[0]-m.width()-40)*0.5-d.padding))},typeof a=="number"?a:200)}};b.fancybox.init=function(){if(!b("#fancybox-wrap").length){b("body").append(g=b('<div id="fancybox-tmp"></div>'),i=b('<div id="fancybox-loading"><div></div></div>'),l=b('<div id="fancybox-overlay"></div>'),f=b('<div id="fancybox-wrap"></div>'));x=b('<div id="fancybox-outer"></div>').append('<div class="fancybox-bg" id="fancybox-bg-n"></div><div class="fancybox-bg" id="fancybox-bg-ne"></div><div class="fancybox-bg" id="fancybox-bg-e"></div><div class="fancybox-bg" id="fancybox-bg-se"></div><div class="fancybox-bg" id="fancybox-bg-s"></div><div class="fancybox-bg" id="fancybox-bg-sw"></div><div class="fancybox-bg" id="fancybox-bg-w"></div><div class="fancybox-bg" id="fancybox-bg-nw"></div>').appendTo(f);
  27 +x.append(m=b('<div id="fancybox-content"></div>'),D=b('<a id="fancybox-close"></a>'),o=b('<div id="fancybox-title"></div>'),A=b('<a href="javascript:;" id="fancybox-left"><span class="fancy-ico" id="fancybox-left-ico"></span></a>'),B=b('<a href="javascript:;" id="fancybox-right"><span class="fancy-ico" id="fancybox-right-ico"></span></a>'));D.click(b.fancybox.close);i.click(b.fancybox.cancel);A.click(function(a){a.preventDefault();b.fancybox.prev()});B.click(function(a){a.preventDefault();b.fancybox.next()});
  28 +b.fn.mousewheel&&f.bind("mousewheel.fb",function(a,c){if(j)a.preventDefault();else if(b(a.target).get(0).clientHeight==0||b(a.target).get(0).scrollHeight===b(a.target).get(0).clientHeight){a.preventDefault();b.fancybox[c>0?"prev":"next"]()}});b.support.opacity||f.addClass("fancybox-ie");if(M){i.addClass("fancybox-ie6");f.addClass("fancybox-ie6");b('<iframe id="fancybox-hide-sel-frame" src="'+(/^https/i.test(window.location.href||"")?"javascript:void(false)":"about:blank")+'" scrolling="no" border="0" frameborder="0" tabindex="-1"></iframe>').prependTo(x)}}};
  29 +b.fn.fancybox.defaults={padding:10,margin:40,opacity:false,modal:false,cyclic:false,scrolling:"auto",width:560,height:340,autoScale:true,autoDimensions:true,centerOnScroll:false,ajax:{},swf:{wmode:"transparent"},hideOnOverlayClick:true,hideOnContentClick:false,overlayShow:true,overlayOpacity:0.7,overlayColor:"#777",titleShow:true,titlePosition:"float",titleFormat:null,titleFromAlt:false,transitionIn:"fade",transitionOut:"fade",speedIn:300,speedOut:300,changeSpeed:300,changeFade:"fast",easingIn:"swing",
  30 +easingOut:"swing",showCloseButton:true,showNavArrows:true,enableEscapeButton:true,enableKeyboardNav:true,onStart:function(){},onCancel:function(){},onComplete:function(){},onCleanup:function(){},onClosed:function(){},onError:function(){}};b(document).ready(function(){b.fancybox.init()})})(jQuery);define("jquery.fancybox-1.3.4",function(){});
  31 +define("index",["require","jquery","hashDispatch","jquery.fancybox-1.3.4"],function(b,g){g(function(){var i=!!navigator.buildID,l=i&&navigator.userAgent.match(/Firefox\/([^\s]+)/);if(i&&l){l=parseFloat(l[1]);i=l>3.99}if(!i){g("#downloadFF4").hide();g("#no36").show();g("#info36").show();g("#firefox").show()}g(".fancybox").fancybox({type:"iframe",href:"http://player.vimeo.com/video/21374067?title=0&amp;byline=0&amp;portrait=0&amp;autoplay=true",width:700,height:468,autoScale:false,autoDimensions:false});
  32 +g("body").delegate("#firefox","click",function(){location="http://www.mozilla.com/en-US/firefox/beta/"}).delegate(".downloadXpi","click",function(f){var x=location.href;location=x.indexOf("staging")!==-1||x.indexOf("linkdrop")!==-1?"/ffshare.xpi":"https://addons.mozilla.org/services/install.php?addon_id=252539&addon_name=F1%20by%20Mozilla%20Labs&src=external-f1home";f.preventDefault()})})});
359 web/0.3.4/jquery.fancybox-1.3.4.css
... ... @@ -0,0 +1,359 @@
  1 +/*
  2 + * FancyBox - jQuery Plugin
  3 + * Simple and fancy lightbox alternative
  4 + *
  5 + * Examples and documentation at: http://fancybox.net
  6 + *
  7 + * Copyright (c) 2008 - 2010 Janis Skarnelis
  8 + * That said, it is hardly a one-person project. Many people have submitted bugs, code, and offered their advice freely. Their support is greatly appreciated.
  9 + *
  10 + * Version: 1.3.4 (11/11/2010)
  11 + * Requires: jQuery v1.3+
  12 + *
  13 + * Dual licensed under the MIT and GPL licenses:
  14 + * http://www.opensource.org/licenses/mit-license.php
  15 + * http://www.gnu.org/licenses/gpl.html
  16 + */
  17 +
  18 +#fancybox-loading {
  19 + position: fixed;
  20 + top: 50%;
  21 + left: 50%;
  22 + width: 40px;
  23 + height: 40px;
  24 + margin-top: -20px;
  25 + margin-left: -20px;
  26 + cursor: pointer;
  27 + overflow: hidden;
  28 + z-index: 1104;
  29 + display: none;
  30 +}
  31 +
  32 +#fancybox-loading div {
  33 + position: absolute;
  34 + top: 0;
  35 + left: 0;
  36 + width: 40px;
  37 + height: 480px;
  38 + background-image: url('i/fancybox/fancybox.png');
  39 +}
  40 +
  41 +#fancybox-overlay {
  42 + position: absolute;
  43 + top: 0;
  44 + left: 0;
  45 + width: 100%;
  46 + z-index: 1100;
  47 + display: none;
  48 +}
  49 +
  50 +#fancybox-tmp {
  51 + padding: 0;
  52 + margin: 0;
  53 + border: 0;
  54 + overflow: auto;
  55 + display: none;
  56 +}
  57 +
  58 +#fancybox-wrap {
  59 + position: absolute;
  60 + top: 0;
  61 + left: 0;
  62 + padding: 20px 10px 10px 20px;
  63 + z-index: 1101;
  64 + outline: none;
  65 + display: none;
  66 +}
  67 +
  68 +#fancybox-outer {
  69 + position: relative;
  70 + width: 100%;
  71 + height: 100%;
  72 + background: #fff;
  73 +}
  74 +
  75 +#fancybox-content {
  76 + width: 0;
  77 + height: 0;
  78 + padding: 0;
  79 + outline: none;
  80 + position: relative;
  81 + overflow: hidden;
  82 + z-index: 1102;
  83 + border: 0px solid #fff;
  84 +}
  85 +
  86 +#fancybox-hide-sel-frame {
  87 + position: absolute;
  88 + top: 0;
  89 + left: 0;
  90 + width: 100%;
  91 + height: 100%;
  92 + background: transparent;
  93 + z-index: 1101;
  94 +}
  95 +
  96 +#fancybox-close {
  97 + position: absolute;
  98 + top: -15px;
  99 + right: -25px;
  100 + width: 30px;
  101 + height: 30px;
  102 + background: transparent url('i/fancybox/fancybox.png') -40px 0px;
  103 + cursor: pointer;
  104 + z-index: 1103;
  105 + display: none;
  106 +}
  107 +
  108 +#fancybox-error {
  109 + color: #444;
  110 + font: normal 12px/20px Arial;
  111 + padding: 14px;
  112 + margin: 0;
  113 +}
  114 +
  115 +#fancybox-img {
  116 + width: 100%;
  117 + height: 100%;
  118 + padding: 0;
  119 + margin: 0;
  120 + border: none;
  121 + outline: none;
  122 + line-height: 0;
  123 + vertical-align: top;
  124 +}
  125 +
  126 +#fancybox-frame {
  127 + width: 100%;
  128 + height: 100%;
  129 + border: none;
  130 + display: block;
  131 +}
  132 +
  133 +#fancybox-left, #fancybox-right {
  134 + position: absolute;
  135 + bottom: 0px;
  136 + height: 100%;
  137 + width: 35%;
  138 + cursor: pointer;
  139 + outline: none;
  140 + background: transparent url('i/fancybox/blank.gif');
  141 + z-index: 1102;
  142 + display: none;
  143 +}
  144 +
  145 +#fancybox-left {
  146 + left: 0px;
  147 +}
  148 +
  149 +#fancybox-right {
  150 + right: 0px;
  151 +}
  152 +
  153 +#fancybox-left-ico, #fancybox-right-ico {
  154 + position: absolute;
  155 + top: 50%;
  156 + left: -9999px;
  157 + width: 30px;
  158 + height: 30px;
  159 + margin-top: -15px;
  160 + cursor: pointer;
  161 + z-index: 1102;
  162 + display: block;
  163 +}
  164 +
  165 +#fancybox-left-ico {
  166 + background-image: url('i/fancybox/fancybox.png');
  167 + background-position: -40px -30px;
  168 +}
  169 +
  170 +#fancybox-right-ico {
  171 + background-image: url('i/fancybox/fancybox.png');
  172 + background-position: -40px -60px;
  173 +}
  174 +
  175 +#fancybox-left:hover, #fancybox-right:hover {
  176 + visibility: visible; /* IE6 */
  177 +}
  178 +
  179 +#fancybox-left:hover span {
  180 + left: 20px;
  181 +}
  182 +
  183 +#fancybox-right:hover span {
  184 + left: auto;
  185 + right: 20px;
  186 +}
  187 +
  188 +.fancybox-bg {
  189 + position: absolute;
  190 + padding: 0;
  191 + margin: 0;
  192 + border: 0;
  193 + width: 20px;
  194 + height: 20px;
  195 + z-index: 1001;
  196 +}
  197 +
  198 +#fancybox-bg-n {
  199 + top: -20px;
  200 + left: 0;
  201 + width: 100%;
  202 + background-image: url('i/fancybox/fancybox-x.png');
  203 +}
  204 +
  205 +#fancybox-bg-ne {
  206 + top: -20px;
  207 + right: -20px;
  208 + background-image: url('i/fancybox/fancybox.png');
  209 + background-position: -40px -162px;
  210 +}
  211 +
  212 +#fancybox-bg-e {
  213 + top: 0;
  214 + right: -20px;
  215 + height: 100%;
  216 + background-image: url('i/fancybox/fancybox-y.png');
  217 + background-position: -20px 0px;
  218 +}
  219 +
  220 +#fancybox-bg-se {
  221 + bottom: -20px;
  222 + right: -20px;
  223 + background-image: url('i/fancybox/fancybox.png');
  224 + background-position: -40px -182px;
  225 +}
  226 +
  227 +#fancybox-bg-s {
  228 + bottom: -20px;
  229 + left: 0;
  230 + width: 100%;
  231 + background-image: url('i/fancybox/fancybox-x.png');
  232 + background-position: 0px -20px;
  233 +}
  234 +
  235 +#fancybox-bg-sw {
  236 + bottom: -20px;
  237 + left: -20px;
  238 + background-image: url('i/fancybox/fancybox.png');
  239 + background-position: -40px -142px;
  240 +}
  241 +
  242 +#fancybox-bg-w {
  243 + top: 0;
  244 + left: -20px;
  245 + height: 100%;
  246 + background-image: url('i/fancybox/fancybox-y.png');
  247 +}
  248 +
  249 +#fancybox-bg-nw {
  250 + top: -20px;
  251 + left: -20px;
  252 + background-image: url('i/fancybox/fancybox.png');
  253 + background-position: -40px -122px;
  254 +}
  255 +
  256 +#fancybox-title {
  257 + font-family: Helvetica;
  258 + font-size: 12px;
  259 + z-index: 1102;
  260 +}
  261 +
  262 +.fancybox-title-inside {
  263 + padding-bottom: 10px;
  264 + text-align: center;
  265 + color: #333;
  266 + background: #fff;
  267 + position: relative;
  268 +}
  269 +
  270 +.fancybox-title-outside {
  271 + padding-top: 10px;
  272 + color: #fff;
  273 +}
  274 +
  275 +.fancybox-title-over {
  276 + position: absolute;
  277 + bottom: 0;
  278 + left: 0;
  279 + color: #FFF;
  280 + text-align: left;
  281 +}
  282 +
  283 +#fancybox-title-over {
  284 + padding: 10px;
  285 + background-image: url('i/fancybox/fancy_title_over.png');
  286 + display: block;
  287 +}
  288 +
  289 +.fancybox-title-float {
  290 + position: absolute;
  291 + left: 0;
  292 + bottom: -20px;
  293 + height: 32px;
  294 +}
  295 +
  296 +#fancybox-title-float-wrap {
  297 + border: none;
  298 + border-collapse: collapse;
  299 + width: auto;
  300 +}
  301 +
  302 +#fancybox-title-float-wrap td {
  303 + border: none;
  304 + white-space: nowrap;
  305 +}
  306 +
  307 +#fancybox-title-float-left {
  308 + padding: 0 0 0 15px;
  309 + background: url('i/fancybox/fancybox.png') -40px -90px no-repeat;
  310 +}
  311 +
  312 +#fancybox-title-float-main {
  313 + color: #FFF;
  314 + line-height: 29px;
  315 + font-weight: bold;
  316 + padding: 0 0 3px 0;
  317 + background: url('i/fancybox/fancybox-x.png') 0px -40px;
  318 +}
  319 +
  320 +#fancybox-title-float-right {
  321 + padding: 0 0 0 15px;
  322 + background: url('i/fancybox/fancybox.png') -55px -90px no-repeat;
  323 +}
  324 +
  325 +/* IE6 */
  326 +
  327 +.fancybox-ie6 #fancybox-close { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='i/fancybox/fancy_close.png', sizingMethod='scale'); }
  328 +
  329 +.fancybox-ie6 #fancybox-left-ico { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='i/fancybox/fancy_nav_left.png', sizingMethod='scale'); }
  330 +.fancybox-ie6 #fancybox-right-ico { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='i/fancybox/fancy_nav_right.png', sizingMethod='scale'); }
  331 +
  332 +.fancybox-ie6 #fancybox-title-over { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='i/fancybox/fancy_title_over.png', sizingMethod='scale'); zoom: 1; }
  333 +.fancybox-ie6 #fancybox-title-float-left { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='i/fancybox/fancy_title_left.png', sizingMethod='scale'); }
  334 +.fancybox-ie6 #fancybox-title-float-main { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='i/fancybox/fancy_title_main.png', sizingMethod='scale'); }
  335 +.fancybox-ie6 #fancybox-title-float-right { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='i/fancybox/fancy_title_right.png', sizingMethod='scale'); }
  336 +
  337 +.fancybox-ie6 #fancybox-bg-w, .fancybox-ie6 #fancybox-bg-e, .fancybox-ie6 #fancybox-left, .fancybox-ie6 #fancybox-right, #fancybox-hide-sel-frame {
  338 + height: expression(this.parentNode.clientHeight + "px");
  339 +}
  340 +
  341 +#fancybox-loading.fancybox-ie6 {
  342 + position: absolute; margin-top: 0;
  343 + top: expression( (-20 + (document.documentElement.clientHeight ? document.documentElement.clientHeight/2 : document.body.clientHeight/2 ) + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop )) + 'px');
  344 +}
  345 +
  346 +#fancybox-loading.fancybox-ie6 div { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='i/fancybox/fancy_loading.png', sizingMethod='scale'); }
  347 +
  348 +/* IE6, IE7, IE8 */
  349 +
  350 +.fancybox-ie .fancybox-bg { background: transparent !important; }
  351 +
  352 +.fancybox-ie #fancybox-bg-n { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='i/fancybox/fancy_shadow_n.png', sizingMethod='scale'); }
  353 +.fancybox-ie #fancybox-bg-ne { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='i/fancybox/fancy_shadow_ne.png', sizingMethod='scale'); }
  354 +.fancybox-ie #fancybox-bg-e { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='i/fancybox/fancy_shadow_e.png', sizingMethod='scale'); }
  355 +.fancybox-ie #fancybox-bg-se { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='i/fancybox/fancy_shadow_se.png', sizingMethod='scale'); }
  356 +.fancybox-ie #fancybox-bg-s { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='i/fancybox/fancy_shadow_s.png', sizingMethod='scale'); }
  357 +.fancybox-ie #fancybox-bg-sw { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='i/fancybox/fancy_shadow_sw.png', sizingMethod='scale'); }
  358 +.fancybox-ie #fancybox-bg-w { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='i/fancybox/fancy_shadow_w.png', sizingMethod='scale'); }
  359 +.fancybox-ie #fancybox-bg-nw { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='i/fancybox/fancy_shadow_nw.png', sizingMethod='scale'); }
57 web/0.3.4/play/ac.html
... ... @@ -0,0 +1,57 @@
  1 +<!DOCTYPE html>
  2 +<html>
  3 +<head>
  4 + <title>Autocomplete test</title>
  5 + <script src="../scripts/requireplugins-jquery.js"></script>
  6 + <script src="../scripts/jquery-ui-1.8.7.min.js"></script>
  7 + <script>
  8 + var options = {
  9 + a: [
  10 + 'alpha',
  11 + 'amature'
  12 + ],
  13 + b: [
  14 + 'bass',
  15 + 'bicycle'
  16 + ]
  17 + },
  18 + options2 = [
  19 + 'alpha',
  20 + 'amature',
  21 + 'bass',
  22 + 'bicycle'
  23 + ];