Jetpack by WordPress.com - Version 2.6.4

Version Description

Release Date: May 26, 2016

  • Important security update. Please upgrade immediately.
Download this release

Release Info

Developer samhotchkiss
Plugin Icon 128x128 Jetpack by WordPress.com
Version 2.6.4
Comparing to
See all releases

Code changes from version 2.5.3 to 2.6.4

Files changed (42) hide show
  1. .travis.yml +40 -0
  2. _inc/genericons.php +1 -1
  3. _inc/genericons/Genericons-Regular.otf +0 -0
  4. _inc/genericons/README.txt +31 -0
  5. _inc/genericons/example.html +21 -1
  6. _inc/genericons/font/genericons-regular-webfont.eot +0 -0
  7. _inc/genericons/font/genericons-regular-webfont.svg +26 -6
  8. _inc/genericons/font/genericons-regular-webfont.ttf +0 -0
  9. _inc/genericons/font/genericons-regular-webfont.woff +0 -0
  10. _inc/genericons/genericons.css +123 -103
  11. _inc/images/jetpack-icon.svg +13 -0
  12. _inc/images/module-icons-sprite-2x.png +0 -0
  13. _inc/images/module-icons-sprite.png +0 -0
  14. _inc/jetpack-icons/font/jetpack.eot +0 -0
  15. _inc/jetpack-icons/font/jetpack.svg +11 -0
  16. _inc/jetpack-icons/font/jetpack.ttf +0 -0
  17. _inc/jetpack-icons/font/jetpack.woff +0 -0
  18. _inc/jetpack-icons/jetpack-icons.css +11 -0
  19. _inc/jetpack.css +52 -42
  20. class.jetpack-cli.php +177 -0
  21. class.jetpack-debugger.php +4 -2
  22. class.jetpack-heartbeat.php +31 -15
  23. class.jetpack-options.php +1 -0
  24. class.jetpack-user-agent.php +1 -1
  25. class.jetpack.php +334 -81
  26. class.json-api-endpoints.php +42 -3
  27. class.json-api.php +4 -0
  28. class.media-extractor.php +406 -0
  29. class.media-summary.php +263 -0
  30. class.photon.php +8 -10
  31. functions.compat.php +55 -0
  32. functions.opengraph.php +68 -5
  33. functions.twitter-cards.php +99 -30
  34. jetpack.php +10 -11
  35. languages/jetpack-af.mo +0 -0
  36. languages/jetpack-af.po +2655 -2274
  37. languages/jetpack-ar.mo +0 -0
  38. languages/jetpack-ar.po +3117 -2736
  39. languages/jetpack-az.mo +0 -0
  40. languages/jetpack-az.po +2527 -2146
  41. languages/jetpack-bs_BA.mo +0 -0
  42. languages/jetpack-bs_BA.po +786 -860
.travis.yml ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Travis CI Configuration File
2
+
3
+ # Tell Travis CI we're using PHP
4
+ language: php
5
+
6
+ # Versions of PHP to test against
7
+ php:
8
+ - "5.2"
9
+ - "5.3"
10
+ - "5.4"
11
+
12
+ # Specify versions of WordPress to test against
13
+ # WP_VERSION = WordPress version number (use "master" for SVN trunk)
14
+ # WP_MULTISITE = whether to test multisite (use either "0" or "1")
15
+ env:
16
+ - WP_VERSION=master WP_MULTISITE=0
17
+ - WP_VERSION=3.6 WP_MULTISITE=0
18
+ - WP_VERSION=3.5.2 WP_MULTISITE=0
19
+ # - WP_VERSION=3.4.2 WP_MULTISITE=0
20
+ # - WP_VERSION=3.3.3 WP_MULTISITE=0
21
+ # - WP_VERSION=3.2.1 WP_MULTISITE=0
22
+ - WP_VERSION=master WP_MULTISITE=1
23
+ - WP_VERSION=3.6 WP_MULTISITE=1
24
+ - WP_VERSION=3.5.2 WP_MULTISITE=1
25
+ # - WP_VERSION=3.4.2 WP_MULTISITE=1
26
+ # - WP_VERSION=3.3.3 WP_MULTISITE=1
27
+ # - WP_VERSION=3.2.1 WP_MULTISITE=1
28
+
29
+ # Grab the setup script and execute
30
+ before_script:
31
+ - wget https://raw.github.com/tierra/wordpress-plugin-tests/setup/setup.sh
32
+ - source setup.sh
33
+
34
+ script: phpunit
35
+
36
+ # wordpress-plugin-tests specific config
37
+ # Tells Travis CI not to run unit tests against the setup branch
38
+ branches:
39
+ except:
40
+ - setup
_inc/genericons.php CHANGED
@@ -8,6 +8,6 @@
8
  add_action( 'init', 'jetpack_register_genericons', 1 );
9
  function jetpack_register_genericons() {
10
  if ( ! wp_style_is( 'genericons', 'registered' ) ) {
11
- wp_register_style( 'genericons', plugins_url( 'genericons/genericons.css', __FILE__ ), false, '3.0' );
12
  }
13
  }
8
  add_action( 'init', 'jetpack_register_genericons', 1 );
9
  function jetpack_register_genericons() {
10
  if ( ! wp_style_is( 'genericons', 'registered' ) ) {
11
+ wp_register_style( 'genericons', plugins_url( 'genericons/genericons.css', __FILE__ ), false, '3.0.2' );
12
  }
13
  }
_inc/genericons/Genericons-Regular.otf CHANGED
Binary file
_inc/genericons/README.txt CHANGED
@@ -52,17 +52,48 @@ _ _ ____ ___ ____ ____
52
  | \| |__| | |___ ___]
53
 
54
 
 
 
55
  Genericons-Regular.otf found in the root directory of this zip has not been web-font-ified. So you can drop it in your system fonts folder and use the font in Photoshop if you like.
56
 
 
 
 
 
57
  Note that Genericons has been designed for a 16x16 pixel grid. That means it'll look sharp at font-size: 16px exactly. It'll also be crisp at multiples thereof, such as 32px or 64px. It'll also look reasonably crisp at in-between font sizes such as 24px or 48px, but not quite as crisp as 16 or 32. Please don't set the font-size to 17px, though, that'll just look terrible.
58
 
59
  Also note the CSS property "-webkit-font-smoothing: antialiased". That makes the icons look great in WebKit browsers. Please see http://noscope.com/2012/font-smoothing for more info.
60
 
 
 
 
 
 
61
 
62
  ____ _ _ ____ _ _ ____ ____ _ ____ ____
63
  | |__| |__| |\ | | __ |___ | | | | __
64
  |___ | | | | | \| |__] |___ |___ |__| |__]
65
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
66
  V3.0:
67
  Mainly maintenance and a few new icons.
68
  - Fast forward, rewind, PollDaddy, Notice, Info, Help, Portfolio
52
  | \| |__| | |___ ___]
53
 
54
 
55
+ Photoshop mockups:
56
+
57
  Genericons-Regular.otf found in the root directory of this zip has not been web-font-ified. So you can drop it in your system fonts folder and use the font in Photoshop if you like.
58
 
59
+ For those of you using Genericons in your Photoshop mockup, remember to delete the old version of the font from Font Book, and grab the new one from the zip file. This also affects using it in your webdesigns: if you have an old version of the font installed locally, that's the font that'll be used in your website as well, so if you're missing icons, check for old versions of the font on your system.
60
+
61
+ Pixel grid:
62
+
63
  Note that Genericons has been designed for a 16x16 pixel grid. That means it'll look sharp at font-size: 16px exactly. It'll also be crisp at multiples thereof, such as 32px or 64px. It'll also look reasonably crisp at in-between font sizes such as 24px or 48px, but not quite as crisp as 16 or 32. Please don't set the font-size to 17px, though, that'll just look terrible.
64
 
65
  Also note the CSS property "-webkit-font-smoothing: antialiased". That makes the icons look great in WebKit browsers. Please see http://noscope.com/2012/font-smoothing for more info.
66
 
67
+ Updates:
68
+
69
+ We don't often update icons, but do very carefully when we get good feedback suggesting improvements. Please be mindful if you upgrade, and check that the updated icons behave as you intended.
70
+
71
+
72
 
73
  ____ _ _ ____ _ _ ____ ____ _ ____ ____
74
  | |__| |__| |\ | | __ |___ | | | | __
75
  |___ | | | | | \| |__] |___ |___ |__| |__]
76
 
77
+ V3.0.2:
78
+ A slew of new stuff and updates.
79
+ - Social icons: Skype, Digg, Reddit, Stumbleupon, Pocket.
80
+ - New generic icons: heart, lock and print.
81
+ - New editing icons: code, bold, italic, image
82
+ - New interaction icons: subscribe, unsubscribe, subscribed, reply all, reply, flag.
83
+ - The hyperlink icon has been updated to be clearer, chunkier.
84
+ - The "home" icon has been updated for style, size and clarity.
85
+ - The email icon has been updated for style and clarity, and to fit with the new subscribe icons.
86
+ - The document icon has been updated for style.
87
+ - The "pin" icon has been updated for style and clarity.
88
+ - The Twitter icon has been scaled down to fit with the other social icons.
89
+
90
+ V3.0.1:
91
+ Mostly maintenance.
92
+ - Fixed an issue with the example page that showed an old "top" icon instead of the actual NEW "refresh" icon.
93
+ - Added inverse Google+ and Path.
94
+ - Replaced tabs with spaces in the helper CSS.
95
+ - Changed the Genericons.com copy/paste tool to serve span's instead of div's for casual icon insertion. It's being converted to "inline-block" anyway.
96
+
97
  V3.0:
98
  Mainly maintenance and a few new icons.
99
  - Fast forward, rewind, PollDaddy, Notice, Info, Help, Portfolio
_inc/genericons/example.html CHANGED
@@ -158,6 +158,13 @@ body {
158
  <div alt="f215" class="genericon genericon-instagram"></div>
159
  <div alt="f216" class="genericon genericon-codepen"></div>
160
  <div alt="f217" class="genericon genericon-polldaddy"></div>
 
 
 
 
 
 
 
161
 
162
  <!-- meta icons -->
163
  <div alt="f300" class="genericon genericon-comment"></div>
@@ -191,7 +198,7 @@ body {
191
  <div alt="f417" class="genericon genericon-location"></div>
192
  <div alt="f418" class="genericon genericon-checkmark"></div>
193
  <div alt="f419" class="genericon genericon-menu"></div>
194
- <div alt="f420" class="genericon genericon-top"></div>
195
  <div alt="f421" class="genericon genericon-minimize"></div>
196
  <div alt="f422" class="genericon genericon-maximize"></div>
197
  <div alt="f423" class="genericon genericon-404"></div>
@@ -232,6 +239,19 @@ body {
232
  <div alt="f458" class="genericon genericon-fastforward"></div>
233
  <div alt="f459" class="genericon genericon-rewind"></div>
234
  <div alt="f460" class="genericon genericon-portfolio"></div>
 
 
 
 
 
 
 
 
 
 
 
 
 
235
 
236
  <!-- generic shapes -->
237
  <div alt="f500" class="genericon genericon-uparrow"></div>
158
  <div alt="f215" class="genericon genericon-instagram"></div>
159
  <div alt="f216" class="genericon genericon-codepen"></div>
160
  <div alt="f217" class="genericon genericon-polldaddy"></div>
161
+ <div alt="f218" class="genericon genericon-googleplus-alt"></div>
162
+ <div alt="f219" class="genericon genericon-path"></div>
163
+ <div alt="f220" class="genericon genericon-skype"></div>
164
+ <div alt="f221" class="genericon genericon-digg"></div>
165
+ <div alt="f222" class="genericon genericon-reddit"></div>
166
+ <div alt="f223" class="genericon genericon-stumbleupon"></div>
167
+ <div alt="f224" class="genericon genericon-pocket"></div>
168
 
169
  <!-- meta icons -->
170
  <div alt="f300" class="genericon genericon-comment"></div>
198
  <div alt="f417" class="genericon genericon-location"></div>
199
  <div alt="f418" class="genericon genericon-checkmark"></div>
200
  <div alt="f419" class="genericon genericon-menu"></div>
201
+ <div alt="f420" class="genericon genericon-refresh"></div>
202
  <div alt="f421" class="genericon genericon-minimize"></div>
203
  <div alt="f422" class="genericon genericon-maximize"></div>
204
  <div alt="f423" class="genericon genericon-404"></div>
239
  <div alt="f458" class="genericon genericon-fastforward"></div>
240
  <div alt="f459" class="genericon genericon-rewind"></div>
241
  <div alt="f460" class="genericon genericon-portfolio"></div>
242
+ <div alt="f461" class="genericon genericon-heart"></div>
243
+ <div alt="f462" class="genericon genericon-code"></div>
244
+ <div alt="f463" class="genericon genericon-subscribe"></div>
245
+ <div alt="f464" class="genericon genericon-unsubscribe"></div>
246
+ <div alt="f465" class="genericon genericon-subscribed"></div>
247
+ <div alt="f466" class="genericon genericon-reply-alt"></div>
248
+ <div alt="f467" class="genericon genericon-reply-single"></div>
249
+ <div alt="f468" class="genericon genericon-flag"></div>
250
+ <div alt="f469" class="genericon genericon-print"></div>
251
+ <div alt="f470" class="genericon genericon-lock"></div>
252
+ <div alt="f471" class="genericon genericon-bold"></div>
253
+ <div alt="f472" class="genericon genericon-italic"></div>
254
+ <div alt="f473" class="genericon genericon-picture"></div>
255
 
256
  <!-- generic shapes -->
257
  <div alt="f500" class="genericon genericon-uparrow"></div>
_inc/genericons/font/genericons-regular-webfont.eot CHANGED
Binary file
_inc/genericons/font/genericons-regular-webfont.svg CHANGED
@@ -14,12 +14,12 @@
14
  <glyph unicode="&#xf104;" d="M1664 1024l-1152 -640v1280z" />
15
  <glyph unicode="&#xf105;" d="M1408 1408q0 -124 -71.5 -222t-184.5 -138v-536l-256 -128v664q-113 40 -184.5 138t-71.5 222q0 159 112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5z" />
16
  <glyph unicode="&#xf106;" d="M512 1408h512l-256 -768h-384zM1792 1408l-256 -768h-384l128 768h512z" />
17
- <glyph unicode="&#xf107;" d="M870 1450l135 136q75 75 181 75t181 -75l91 -91q75 -75 75 -181t-75 -181l-136 -136l-90 91l135 136q38 37 38 90t-38 91l-90 90q-38 38 -91 38t-90 -38l-136 -135zM734 952l362 362l90 -90l-362 -362zM553 771l90 -90q38 -38 91 -38t90 38l136 135l91 -90l-136 -136 q-75 -75 -181 -75t-181 75l-91 91q-75 75 -75 181t75 181l136 135l91 -90l-136 -136q-38 -37 -38 -90t38 -91z" />
18
  <glyph unicode="&#xf108;" d="M256 1792h1024q96 0 176 -80t80 -176v-384q0 -96 -80 -176t-176 -80h-448l-448 -448v448h-128q-96 0 -176 80t-80 176v384q0 96 80 176t176 80zM1664 1152v384q96 0 176 -80t80 -176v-384q0 -96 -80 -176t-176 -80h-128v-448l-448 448h-320l128 128h384q168 0 276 108 t108 276z" />
19
  <glyph unicode="&#xf109;" d="M640 1280l384 384v-1280l-384 384h-384v512h384zM1386 1386l91 91q88 -89 137.5 -206t49.5 -247q0 -87 -23 -170t-64.5 -153.5t-99.5 -129.5l-91 91q71 71 110.5 164.5t39.5 197.5t-39.5 197.5t-110.5 164.5zM1205 1205l91 91q26 -27 46.5 -57.5t35 -65t22.5 -72.5t8 -77 q0 -78 -29.5 -148t-82.5 -124l-91 91q75 75 75 181t-75 181z" />
20
  <glyph unicode="&#xf200;" d="M1024 2048q209 0 398.5 -81t326.5 -218t218 -326.5t81 -398.5q0 -335 -195.5 -601.5t-504.5 -369.5q-36 -7 -53 8.5t-17 40.5q0 4 0.5 102t0.5 179q0 130 -69 189q77 9 137.5 24.5t124.5 51.5t107 89t70.5 140t27.5 201q0 161 -105 274q6 15 11 35t9 56t-3.5 83.5 t-26.5 96.5q-4 1 -10.5 2t-32 -1t-55.5 -11t-79.5 -33.5t-104.5 -61.5q-118 33 -256 35q-138 -2 -256 -35q-55 37 -104 61.5t-80 33t-54.5 11.5t-33.5 1l-10 -2q-58 -146 -10 -271q-105 -115 -105 -274q0 -114 27.5 -201t70.5 -140t107 -89t124.5 -52t136.5 -24 q-53 -47 -65 -137q-28 -13 -59.5 -20t-75.5 -6.5t-87.5 28.5t-75.5 83q-2 4 -6.5 10.5t-19 24t-31.5 31t-44 25.5t-56 14h-10t-18.5 -3.5t-17 -9t4 -18.5t34.5 -31q3 -1 7.5 -4t19 -14.5t27.5 -27t30 -43.5t30 -61q1 -3 2.5 -7t8 -17t15.5 -25.5t24.5 -28t33.5 -28t45 -23.5 t57.5 -16t71.5 -3.5t87 11.5q0 -50 0.5 -110t0.5 -64q0 -24 -17 -40t-53 -10q-309 103 -504.5 370t-195.5 602q0 208 81 398t218.5 327t327 218t397.5 81z" />
21
  <glyph unicode="&#xf201;" d="M1024 2048q206 0 395.5 -82t327 -219.5t219.5 -327t82 -395.5t-82 -395.5t-219.5 -327t-327 -219.5t-395.5 -82t-395.5 82t-327 219.5t-219.5 327t-82 395.5t82 395.5t219.5 327t327 219.5t395.5 82zM1024 1920q-32 0 -96 -8t-96 -8q102 -166 304 -512q6 2 86 31 t118.5 45t108 47t122 64t93.5 69q-126 126 -290.5 199t-349.5 73zM672 1856q-194 -85 -329.5 -247.5t-182.5 -376.5q194 -22 444 14t388 82q-141 282 -320 528zM1760 1536q-71 -57 -162 -104.5t-214.5 -100.5t-183.5 -83q22 -29 36.5 -54.5t34 -67.5t25.5 -54q170 33 336 30 t288 -30q-26 285 -160 464zM128 1088v-64q0 -167 58 -319.5t166 -272.5q125 205 339 360t445 232q-16 48 -80 176q-282 -86 -481.5 -111t-446.5 -1zM1536 288q156 108 258 278t126 362q-276 46 -576 0q14 -27 43 -103t74.5 -231t74.5 -306zM1024 128q181 0 368 80 q-33 300 -208 688q-222 -74 -410 -225.5t-294 -350.5q216 -192 544 -192z" />
22
- <glyph unicode="&#xf202;" d="M2048 1659q-84 -127 -210 -217q2 -36 2 -55q0 -168 -49 -337t-150 -323.5t-241 -273.5t-336 -190t-420 -71q-351 0 -644 189q50 -6 100 -6q293 0 522 180q-137 2 -244.5 83t-147.5 208q44 -7 79 -7q57 0 110 15q-145 29 -241 144.5t-96 267.5v5q86 -48 191 -53 q-86 58 -136.5 150t-50.5 200q0 113 57 211q158 -194 383 -310t483 -129q-11 49 -11 96q0 174 123 297t297 123q89 0 168.5 -35t138.5 -97q142 27 266 102q-47 -150 -184 -233q124 15 241 66z" />
23
  <glyph unicode="&#xf203;" d="M384 1920h1280q106 0 181 -75t75 -181v-1280q0 -106 -75 -181t-181 -75h-282v711h270l12 260h-282v192v12q0 60 21.5 87.5t87.5 27.5l166 -1l6 242q-78 10 -183 10q-94 0 -167 -27.5t-117 -74.5t-66 -105.5t-22 -126.5v-236h-254v-260h254v-711h-724q-106 0 -181 75 t-75 181v1280q0 106 75 181t181 75z" />
24
  <glyph unicode="&#xf204;" d="M1511 1272l-14 -303h-315v-841h-320v841h-222v303h222v258q0 78 26 147t77 124t136.5 87t194.5 32q55 0 108 -3t79 -6l26 -3l-7 -282h-193q-76 0 -101.5 -32t-25.5 -101v-14v-207h329z" />
25
  <glyph unicode="&#xf205;" d="M1024 1920q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71zM1426 536l81 268q24 79 32.5 107.5t18.5 74.5t10 79q0 46 -11.5 90.5t-23.5 71t-32 60.5q-2 4 -11.5 19 t-12 20t-10.5 18.5t-11 19t-9 17.5t-8.5 19t-6.5 18t-5.5 19.5t-3 18.5t-1.5 20q0 57 39 100t97 43l10 -1q-110 101 -249.5 156.5t-294.5 55.5q-207 0 -385 -98t-288 -266h52q37 0 91 2.5t89 4.5l34 3q21 1 30.5 -14.5t2.5 -32.5t-27 -20q-44 -5 -93 -7l294 -873l176 529 l-125 344l-85 7q-20 2 -27.5 19t2.5 33t30 15q133 -10 212 -10q38 0 91.5 2.5t88.5 4.5l35 3q16 1 25.5 -8.5t10 -22t-7 -23.5t-23.5 -13q-43 -5 -92 -7zM1731 1410q5 -40 5 -82q0 -135 -61 -289l-246 -711q183 106 292 291.5t109 404.5q0 207 -99 386zM218 1024 q0 -236 125 -430.5t330 -294.5l-385 1053q-70 -156 -70 -328zM1024 218q138 0 268 46q-4 6 -6 11l-248 679l-242 -703q112 -33 228 -33z" />
@@ -35,6 +35,13 @@
35
  <glyph unicode="&#xf215;" d="M384 1920h1280q106 0 181 -75t75 -181v-1280q0 -106 -75 -181t-181 -75h-1280q-106 0 -181 75t-75 181v1280q0 106 75 181t181 75zM1792 1536v128q0 53 -37.5 90.5t-90.5 37.5h-128q-53 0 -90.5 -37.5t-37.5 -90.5v-128q0 -53 37.5 -90.5t90.5 -37.5h128q53 0 90.5 37.5 t37.5 90.5zM1024 1408q-159 0 -271.5 -112.5t-112.5 -271.5t112.5 -271.5t271.5 -112.5t271.5 112.5t112.5 271.5t-112.5 271.5t-271.5 112.5zM1792 1152h-272q16 -66 16 -128q0 -212 -150 -362t-362 -150t-362 150t-150 362q0 62 16 128h-272v-768q0 -53 37.5 -90.5 t90.5 -37.5h1280q53 0 90.5 37.5t37.5 90.5v768z" />
36
  <glyph unicode="&#xf216;" d="M1061 1779l702 -467q29 -24 29 -55v-467q0 -32 -29 -54l-702 -468q-17 -11 -37 -11q-18 0 -37 11l-702 468q-29 22 -29 54v467q0 31 29 55l702 467q17 11 37 11t37 -11zM441 1257l231 -154l286 191v307zM1090 1294l286 -191l231 154l-517 344v-307zM1258 1024l-234 156 l-233 -156l233 -156zM388 914l165 110l-165 110v-220zM1660 1134l-165 -110l165 -110v220zM958 754l-286 191l-231 -155l517 -344v308zM1607 790l-231 155l-286 -191v-308z" />
37
  <glyph unicode="&#xf217;" d="M1024 1920q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71zM1024 208q236 0 432 123.5t298 327.5q59 136 59 266q0 117 -43.5 221.5t-118.5 182.5t-175.5 131 t-215.5 73q116 -48 204 -145t127 -218q54 -151 17.5 -320t-150.5 -289q-111 -123 -276 -179t-332 -27q-168 27 -307 138t-210 270q-74 156 -67.5 338.5t93.5 335.5q88 155 238.5 260t328.5 135q2 0 35 6q-208 -16 -380.5 -128t-272.5 -293.5t-100 -392.5q0 -221 109.5 -409 t297.5 -297.5t409 -109.5zM1113 1770q-157 7 -306.5 -51.5t-258.5 -169.5q-109 -107 -159 -254.5t-30 -296.5q17 -148 100 -275.5t207 -200.5q120 -71 264 -78.5t267 49.5q-76 -21 -148 -21q-149 0 -275.5 74t-200.5 201t-74 276q0 214 146 373l3 3l14 14l1 1 q98 114 235 178t293 64q163 0 306 -70t241 -193q-36 57 -70 96q-104 126 -250 200.5t-305 80.5zM1415 1006q6 -142 -81 -257q-86 -115 -225 -157q-114 -35 -234 -7q83 -34 174 -34q195 0 333.5 138.5t138.5 333.5v2q-10 107 -63.5 202.5t-137.5 157.5q-102 77 -236 87 t-243 -49q-116 -62 -177 -167q-61 -107 -52 -231q8 -119 85 -217t186 -128q110 -33 221.5 8.5t170.5 134.5q61 91 50 204t-86 187q-70 77 -179.5 87t-188.5 -50q-85 -62 -105 -157q-21 -98 30 -182q50 -84 142 -108q92 -23 172 26q38 23 64 58.5t34 76.5q17 88 -34 159 q-52 72 -136 77q-83 6 -142 -54q-57 -55 -45 -138q6 -37 27.5 -68.5t52.5 -47.5q40 -21 87 -16q-46 1 -82 29t-49 71l-2 3q-14 30 -9.5 67t25.5 66q22 30 56.5 46.5t72.5 14.5t73.5 -23.5t54.5 -55.5q46 -76 8 -158q-18 -39 -53.5 -66.5t-78.5 -35.5q-43 -9 -88.5 3.5 t-78.5 43.5q-74 68 -68 169q2 65 45 118.5t109.5 77t132.5 5.5q68 -16 118.5 -70.5t65 -124.5t-9.5 -144q-37 -107 -150 -158.5t-224 -8.5q-114 43 -170 158q-55 117 -17 238q35 121 152 191t246 47q131 -19 223 -128t95 -246z" />
 
 
 
 
 
 
 
38
  <glyph unicode="&#xf300;" d="M512 1536h1024q106 0 181 -75t75 -181v-384q0 -106 -75 -181t-181 -75h-448l-448 -448v448h-128q-106 0 -181 75t-75 181v384q0 106 75 181t181 75z" />
39
  <glyph unicode="&#xf301;" d="M1664 1152l-256 -640h-1024v1024h384l64 -128h448v-128h-640l-128 -256h128l64 128h960z" />
40
  <glyph unicode="&#xf302;" d="M1536 1536v-512l-768 -768l-512 512l768 768h512zM1280 1152q53 0 90.5 37.5t37.5 90.5t-37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5z" />
@@ -43,7 +50,7 @@
43
  <glyph unicode="&#xf305;" d="M1664 1664v-1280h-1408v1280h256v128h128v-128h640v128h128v-128h256zM1536 640v640q0 53 -37.5 90.5t-90.5 37.5h-896q-53 0 -90.5 -37.5t-37.5 -90.5v-640q0 -53 37.5 -90.5t90.5 -37.5h896q53 0 90.5 37.5t37.5 90.5zM832 1280h128q26 0 45 -19t19 -45v-512 q0 -26 -19 -45t-45 -19t-45 19t-19 45v448h-64q-26 0 -45 19t-19 45t19 45t45 19z" />
44
  <glyph unicode="&#xf306;" d="M1664 1664v-1280h-1408v1280h256v128h128v-128h640v128h128v-128h256zM1536 640v640q0 53 -37.5 90.5t-90.5 37.5h-896q-53 0 -90.5 -37.5t-37.5 -90.5v-640q0 -53 37.5 -90.5t90.5 -37.5h896q53 0 90.5 37.5t37.5 90.5zM1088 1280h2h1h3q22 -2 38.5 -18t19.5 -39v-2v-2 v-1v-2q0 -5 -2 -15l-128 -512q-6 -26 -28.5 -40t-48.5 -7q-26 6 -40 28.5t-7 48.5l108 433h-174q-26 0 -45 19t-19 45t19 45t45 19h256z" />
45
  <glyph unicode="&#xf307;" d="M1664 1664v-1280h-1408v1280h256v128h128v-128h640v128h128v-128h256zM1536 640v640q0 53 -37.5 90.5t-90.5 37.5h-896q-53 0 -90.5 -37.5t-37.5 -90.5v-640q0 -53 37.5 -90.5t90.5 -37.5h896q53 0 90.5 37.5t37.5 90.5zM768 1280h128v-128h-128v128zM1024 1280h128v-128 h-128v128zM1280 1280h128v-128h-128v128zM512 1024h128v-128h-128v128zM768 1024h128v-128h-128v128zM1024 1024h128v-128h-128v128zM1280 1024h128v-128h-128v128zM512 768h128v-128h-128v128zM768 768h128v-128h-128v128zM1024 768h128v-128h-128v128z" />
46
- <glyph unicode="&#xf308;" d="M1920 1408v-128h-256l-320 -320v-384h-128l-640 640v128h384l320 320v256h128zM896 768l-512 -512l-128 128l512 512z" />
47
  <glyph unicode="&#xf400;" d="M1792 384l-128 -128l-495 495q-153 -111 -337 -111q-117 0 -223.5 45.5t-184 123t-123 184t-45.5 223.5t45.5 223.5t123 184t184 123t223.5 45.5t223.5 -45.5t184 -123t123 -184t45.5 -223.5q0 -184 -111 -337zM832 768q186 0 317 131.5t131 316.5t-131 316.5t-317 131.5 q-185 0 -316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" />
48
  <glyph unicode="&#xf401;" d="M1792 384l-128 -128l-495 495q-153 -111 -337 -111q-117 0 -223.5 45.5t-184 123t-123 184t-45.5 223.5t45.5 223.5t123 184t184 123t223.5 45.5t223.5 -45.5t184 -123t123 -184t45.5 -223.5q0 -184 -111 -337zM832 768q186 0 317 131.5t131 316.5t-131 316.5t-317 131.5 q-185 0 -316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5zM512 1280h640v-128h-640v128z" />
49
  <glyph unicode="&#xf402;" d="M1664 256l-495 495q-153 -111 -337 -111q-117 0 -223.5 45.5t-184 123t-123 184t-45.5 223.5t45.5 223.5t123 184t184 123t223.5 45.5t223.5 -45.5t184 -123t123 -184t45.5 -223.5q0 -184 -111 -337l495 -495zM384 1216q0 -185 131.5 -316.5t316.5 -131.5 q186 0 317 131.5t131 316.5t-131 316.5t-317 131.5q-185 0 -316.5 -131.5t-131.5 -316.5zM1152 1152h-256v-256h-128v256h-256v128h256v256h128v-256h256v-128z" />
@@ -53,8 +60,8 @@
53
  <glyph unicode="&#xf406;" d="M1216 1088l832 -832l-128 -128l-832 832l-832 -832l-128 128l832 832l-832 832l128 128l832 -832l832 832l128 -128z" />
54
  <glyph unicode="&#xf407;" d="M1536 1408v-128h-1152v128l256 128q0 53 37.5 90.5t90.5 37.5h384q53 0 90.5 -37.5t37.5 -90.5zM832 1408h256q26 0 45 19t19 45t-19 45t-45 19h-256q-26 0 -45 -19t-19 -45t19 -45t45 -19zM1408 1216v-704q0 -53 -37.5 -90.5t-90.5 -37.5h-640q-53 0 -90.5 37.5 t-37.5 90.5v704h128v-704h128v704h128v-704h128v704h128v-704h128v704h128z" />
55
  <glyph unicode="&#xf408;" d="M844 1150l-588 1l476 -330l-183 -535l475 332l475 -332l-183 535l476 330l-587 -1l-181 535z" />
56
- <glyph unicode="&#xf409;" d="M1664 1024l-128 -128l-512 512l-512 -512l-128 128l640 640zM1024 1280l384 -384v-384h-256v384h-256v-384h-256v384z" />
57
- <glyph unicode="&#xf410;" d="M256 1485v51h1536v-51l-768 -512zM256 717v614l461 -307zM1792 717l-461 307l461 307v-614zM1792 563v-51h-1536v51l576 384l192 -128l192 128z" />
58
  <glyph unicode="&#xf411;" d="M1728 1280l-896 -896h-448v448l896 896zM685 941l96 -96l595 595l-96 96zM1440 1376l-595 -595l96 -96l595 595zM896 640l-256 256l-128 -128l256 -256z" />
59
  <glyph unicode="&#xf412;" d="M1280 192v448h-1024v704l384 384v-704h640v448l640 -640z" />
60
  <glyph unicode="&#xf413;" d="M256 1536v256q209 0 408 -55t367.5 -154t310.5 -241t241 -310.5t154 -367.5t55 -408h-256q0 260 -101.5 497t-273 408.5t-408.5 273t-497 101.5zM256 1024v256q209 0 398.5 -81t326.5 -218t218 -326.5t81 -398.5h-256q0 209 -103 385.5t-279.5 279.5t-385.5 103zM640 448 q0 80 -56 136t-136 56t-136 -56t-56 -136t56 -136t136 -56t136 56t56 136z" />
@@ -87,7 +94,7 @@
87
  <glyph unicode="&#xf440;" d="M1641 1024h23q106 0 181 -75t75 -181t-75 -181t-181 -75h-384v256h-512v-256h-384q-106 0 -181 75t-75 181t75 181t181 75h6q-6 32 -6 64q0 133 93.5 226.5t226.5 93.5q134 0 228 -96q47 101 140.5 162.5t207.5 61.5q159 0 271.5 -112.5t112.5 -271.5q0 -62 -23 -128z M1152 384h256l-384 -384l-384 384h256v256h256v-256z" />
88
  <glyph unicode="&#xf441;" d="M1641 1024h23q106 0 181 -75t75 -181t-75 -181t-181 -75h-512v256h256l-384 384l-384 -384h256v-256h-512q-106 0 -181 75t-75 181t75 181t181 75h6q-6 32 -6 64q0 133 93.5 226.5t226.5 93.5q134 0 228 -96q47 101 140.5 162.5t207.5 61.5q159 0 271.5 -112.5 t112.5 -271.5q0 -62 -23 -128z" />
89
  <glyph unicode="&#xf442;" d="M1664 1664v-640h-128v422l-550 -550l-90 91l550 549h-422v128h640zM1280 896l128 128v-512h-896v896h512l-128 -128h-256v-640h640v256z" />
90
- <glyph unicode="&#xf443;" d="M1536 1280v-896h-1024v1280h640zM1408 1152h-384v384h-384v-1024h768v640zM1152 1280h203l-203 203v-203z" />
91
  <glyph unicode="&#xf444;" d="M1664 640h-64q-53 0 -90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5h64v-128h-1024q-106 0 -181 75t-75 181v1024q0 106 75 181t181 75h1024v-1152zM640 384h818q-50 55 -50 128t50 128h-818q-53 0 -90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5z" />
92
  <glyph unicode="&#xf445;" d="M1888 748l-58 -140l-305 22q-44 -56 -107 -107l22 -305l-139 -58l-201 232q-67 -8 -76 -8q-8 0 -75 8l-201 -232l-139 58l21 305q-56 44 -107 107l-305 -22l-58 139l232 201q-8 67 -8 76q0 8 8 75l-232 201l58 139l305 -21q47 60 107 107l-21 305l139 58l201 -232 q67 8 75 8t75 -8l201 232l140 -58l-22 -305q56 -44 107 -107l305 22l58 -139l-232 -201q8 -67 8 -76q0 -8 -8 -75zM1024 768q106 0 181 75t75 181t-75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75z" />
93
  <glyph unicode="&#xf446;" d="M1024 1792q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM1536 1024q0 212 -150 362t-362 150q-136 0 -259 -72l699 -699q72 123 72 259zM512 1024 q0 -212 150 -362t362 -150q135 0 259 72l-699 699q-72 -126 -72 -259z" />
@@ -105,6 +112,19 @@
105
  <glyph unicode="&#xf458;" d="M896 384v480l-768 -480v1280l768 -480v480l1024 -640z" />
106
  <glyph unicode="&#xf459;" d="M1152 384v480l768 -480v1280l-768 -480v480l-1024 -640z" />
107
  <glyph unicode="&#xf460;" d="M896 1280l-256 -768h-128l-256 768h128l86 256h340zM1792 1280l-256 -768h-768l256 768h128l86 256h340l86 -256h128zM747 1280l-43 128h-128l-43 -128h214zM1515 1280l-43 128h-128l-43 -128h214z" />
 
 
 
 
 
 
 
 
 
 
 
 
 
108
  <glyph unicode="&#xf500;" d="M128 0l960 960l960 -960h-1920z" />
109
  <glyph unicode="&#xf501;" d="M0 128l960 960l-960 960v-1920z" />
110
  <glyph unicode="&#xf502;" d="M128 2048l960 -960l960 960h-1920z" />
14
  <glyph unicode="&#xf104;" d="M1664 1024l-1152 -640v1280z" />
15
  <glyph unicode="&#xf105;" d="M1408 1408q0 -124 -71.5 -222t-184.5 -138v-536l-256 -128v664q-113 40 -184.5 138t-71.5 222q0 159 112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5z" />
16
  <glyph unicode="&#xf106;" d="M512 1408h512l-256 -768h-384zM1792 1408l-256 -768h-384l128 768h512z" />
17
+ <glyph unicode="&#xf107;" d="M1088 1792q133 0 226.5 -93.5t93.5 -226.5v-384q0 -97 -53 -176.5t-139 -116.5v151q64 57 64 142v384q0 80 -56 136t-136 56t-136 -56t-56 -136v-384q0 -85 64 -142v-151q-86 37 -139 116.5t-53 176.5v384q0 133 93.5 226.5t226.5 93.5zM960 1230v151q86 -37 139 -116.5 t53 -176.5v-384q0 -133 -93.5 -226.5t-226.5 -93.5t-226.5 93.5t-93.5 226.5v384q0 97 53 176.5t139 116.5v-151q-64 -57 -64 -142v-384q0 -80 56 -136t136 -56t136 56t56 136v384q0 85 -64 142z" />
18
  <glyph unicode="&#xf108;" d="M256 1792h1024q96 0 176 -80t80 -176v-384q0 -96 -80 -176t-176 -80h-448l-448 -448v448h-128q-96 0 -176 80t-80 176v384q0 96 80 176t176 80zM1664 1152v384q96 0 176 -80t80 -176v-384q0 -96 -80 -176t-176 -80h-128v-448l-448 448h-320l128 128h384q168 0 276 108 t108 276z" />
19
  <glyph unicode="&#xf109;" d="M640 1280l384 384v-1280l-384 384h-384v512h384zM1386 1386l91 91q88 -89 137.5 -206t49.5 -247q0 -87 -23 -170t-64.5 -153.5t-99.5 -129.5l-91 91q71 71 110.5 164.5t39.5 197.5t-39.5 197.5t-110.5 164.5zM1205 1205l91 91q26 -27 46.5 -57.5t35 -65t22.5 -72.5t8 -77 q0 -78 -29.5 -148t-82.5 -124l-91 91q75 75 75 181t-75 181z" />
20
  <glyph unicode="&#xf200;" d="M1024 2048q209 0 398.5 -81t326.5 -218t218 -326.5t81 -398.5q0 -335 -195.5 -601.5t-504.5 -369.5q-36 -7 -53 8.5t-17 40.5q0 4 0.5 102t0.5 179q0 130 -69 189q77 9 137.5 24.5t124.5 51.5t107 89t70.5 140t27.5 201q0 161 -105 274q6 15 11 35t9 56t-3.5 83.5 t-26.5 96.5q-4 1 -10.5 2t-32 -1t-55.5 -11t-79.5 -33.5t-104.5 -61.5q-118 33 -256 35q-138 -2 -256 -35q-55 37 -104 61.5t-80 33t-54.5 11.5t-33.5 1l-10 -2q-58 -146 -10 -271q-105 -115 -105 -274q0 -114 27.5 -201t70.5 -140t107 -89t124.5 -52t136.5 -24 q-53 -47 -65 -137q-28 -13 -59.5 -20t-75.5 -6.5t-87.5 28.5t-75.5 83q-2 4 -6.5 10.5t-19 24t-31.5 31t-44 25.5t-56 14h-10t-18.5 -3.5t-17 -9t4 -18.5t34.5 -31q3 -1 7.5 -4t19 -14.5t27.5 -27t30 -43.5t30 -61q1 -3 2.5 -7t8 -17t15.5 -25.5t24.5 -28t33.5 -28t45 -23.5 t57.5 -16t71.5 -3.5t87 11.5q0 -50 0.5 -110t0.5 -64q0 -24 -17 -40t-53 -10q-309 103 -504.5 370t-195.5 602q0 208 81 398t218.5 327t327 218t397.5 81z" />
21
  <glyph unicode="&#xf201;" d="M1024 2048q206 0 395.5 -82t327 -219.5t219.5 -327t82 -395.5t-82 -395.5t-219.5 -327t-327 -219.5t-395.5 -82t-395.5 82t-327 219.5t-219.5 327t-82 395.5t82 395.5t219.5 327t327 219.5t395.5 82zM1024 1920q-32 0 -96 -8t-96 -8q102 -166 304 -512q6 2 86 31 t118.5 45t108 47t122 64t93.5 69q-126 126 -290.5 199t-349.5 73zM672 1856q-194 -85 -329.5 -247.5t-182.5 -376.5q194 -22 444 14t388 82q-141 282 -320 528zM1760 1536q-71 -57 -162 -104.5t-214.5 -100.5t-183.5 -83q22 -29 36.5 -54.5t34 -67.5t25.5 -54q170 33 336 30 t288 -30q-26 285 -160 464zM128 1088v-64q0 -167 58 -319.5t166 -272.5q125 205 339 360t445 232q-16 48 -80 176q-282 -86 -481.5 -111t-446.5 -1zM1536 288q156 108 258 278t126 362q-276 46 -576 0q14 -27 43 -103t74.5 -231t74.5 -306zM1024 128q181 0 368 80 q-33 300 -208 688q-222 -74 -410 -225.5t-294 -350.5q216 -192 544 -192z" />
22
+ <glyph unicode="&#xf202;" d="M1920 1584q-73 -111 -183 -191q0 -7 0.5 -23t0.5 -24q0 -122 -31 -246t-89.5 -241t-149.5 -218.5t-204 -177.5t-260.5 -119.5t-311.5 -43.5q-305 0 -564 165q48 -5 88 -5q256 0 456 157q-119 2 -213 73.5t-130 182.5q39 -7 69 -7q47 0 97 13q-127 26 -211 127t-84 233v5 q80 -43 167 -46q-76 50 -120 131t-44 175q0 101 50 185q138 -170 335 -271.5t423 -112.5q-10 39 -10 84q0 152 108 259.5t260 107.5q160 0 268 -116q128 26 233 89q-42 -132 -161 -203q109 13 211 58z" />
23
  <glyph unicode="&#xf203;" d="M384 1920h1280q106 0 181 -75t75 -181v-1280q0 -106 -75 -181t-181 -75h-282v711h270l12 260h-282v192v12q0 60 21.5 87.5t87.5 27.5l166 -1l6 242q-78 10 -183 10q-94 0 -167 -27.5t-117 -74.5t-66 -105.5t-22 -126.5v-236h-254v-260h254v-711h-724q-106 0 -181 75 t-75 181v1280q0 106 75 181t181 75z" />
24
  <glyph unicode="&#xf204;" d="M1511 1272l-14 -303h-315v-841h-320v841h-222v303h222v258q0 78 26 147t77 124t136.5 87t194.5 32q55 0 108 -3t79 -6l26 -3l-7 -282h-193q-76 0 -101.5 -32t-25.5 -101v-14v-207h329z" />
25
  <glyph unicode="&#xf205;" d="M1024 1920q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71zM1426 536l81 268q24 79 32.5 107.5t18.5 74.5t10 79q0 46 -11.5 90.5t-23.5 71t-32 60.5q-2 4 -11.5 19 t-12 20t-10.5 18.5t-11 19t-9 17.5t-8.5 19t-6.5 18t-5.5 19.5t-3 18.5t-1.5 20q0 57 39 100t97 43l10 -1q-110 101 -249.5 156.5t-294.5 55.5q-207 0 -385 -98t-288 -266h52q37 0 91 2.5t89 4.5l34 3q21 1 30.5 -14.5t2.5 -32.5t-27 -20q-44 -5 -93 -7l294 -873l176 529 l-125 344l-85 7q-20 2 -27.5 19t2.5 33t30 15q133 -10 212 -10q38 0 91.5 2.5t88.5 4.5l35 3q16 1 25.5 -8.5t10 -22t-7 -23.5t-23.5 -13q-43 -5 -92 -7zM1731 1410q5 -40 5 -82q0 -135 -61 -289l-246 -711q183 106 292 291.5t109 404.5q0 207 -99 386zM218 1024 q0 -236 125 -430.5t330 -294.5l-385 1053q-70 -156 -70 -328zM1024 218q138 0 268 46q-4 6 -6 11l-248 679l-242 -703q112 -33 228 -33z" />
35
  <glyph unicode="&#xf215;" d="M384 1920h1280q106 0 181 -75t75 -181v-1280q0 -106 -75 -181t-181 -75h-1280q-106 0 -181 75t-75 181v1280q0 106 75 181t181 75zM1792 1536v128q0 53 -37.5 90.5t-90.5 37.5h-128q-53 0 -90.5 -37.5t-37.5 -90.5v-128q0 -53 37.5 -90.5t90.5 -37.5h128q53 0 90.5 37.5 t37.5 90.5zM1024 1408q-159 0 -271.5 -112.5t-112.5 -271.5t112.5 -271.5t271.5 -112.5t271.5 112.5t112.5 271.5t-112.5 271.5t-271.5 112.5zM1792 1152h-272q16 -66 16 -128q0 -212 -150 -362t-362 -150t-362 150t-150 362q0 62 16 128h-272v-768q0 -53 37.5 -90.5 t90.5 -37.5h1280q53 0 90.5 37.5t37.5 90.5v768z" />
36
  <glyph unicode="&#xf216;" d="M1061 1779l702 -467q29 -24 29 -55v-467q0 -32 -29 -54l-702 -468q-17 -11 -37 -11q-18 0 -37 11l-702 468q-29 22 -29 54v467q0 31 29 55l702 467q17 11 37 11t37 -11zM441 1257l231 -154l286 191v307zM1090 1294l286 -191l231 154l-517 344v-307zM1258 1024l-234 156 l-233 -156l233 -156zM388 914l165 110l-165 110v-220zM1660 1134l-165 -110l165 -110v220zM958 754l-286 191l-231 -155l517 -344v308zM1607 790l-231 155l-286 -191v-308z" />
37
  <glyph unicode="&#xf217;" d="M1024 1920q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71zM1024 208q236 0 432 123.5t298 327.5q59 136 59 266q0 117 -43.5 221.5t-118.5 182.5t-175.5 131 t-215.5 73q116 -48 204 -145t127 -218q54 -151 17.5 -320t-150.5 -289q-111 -123 -276 -179t-332 -27q-168 27 -307 138t-210 270q-74 156 -67.5 338.5t93.5 335.5q88 155 238.5 260t328.5 135q2 0 35 6q-208 -16 -380.5 -128t-272.5 -293.5t-100 -392.5q0 -221 109.5 -409 t297.5 -297.5t409 -109.5zM1113 1770q-157 7 -306.5 -51.5t-258.5 -169.5q-109 -107 -159 -254.5t-30 -296.5q17 -148 100 -275.5t207 -200.5q120 -71 264 -78.5t267 49.5q-76 -21 -148 -21q-149 0 -275.5 74t-200.5 201t-74 276q0 214 146 373l3 3l14 14l1 1 q98 114 235 178t293 64q163 0 306 -70t241 -193q-36 57 -70 96q-104 126 -250 200.5t-305 80.5zM1415 1006q6 -142 -81 -257q-86 -115 -225 -157q-114 -35 -234 -7q83 -34 174 -34q195 0 333.5 138.5t138.5 333.5v2q-10 107 -63.5 202.5t-137.5 157.5q-102 77 -236 87 t-243 -49q-116 -62 -177 -167q-61 -107 -52 -231q8 -119 85 -217t186 -128q110 -33 221.5 8.5t170.5 134.5q61 91 50 204t-86 187q-70 77 -179.5 87t-188.5 -50q-85 -62 -105 -157q-21 -98 30 -182q50 -84 142 -108q92 -23 172 26q38 23 64 58.5t34 76.5q17 88 -34 159 q-52 72 -136 77q-83 6 -142 -54q-57 -55 -45 -138q6 -37 27.5 -68.5t52.5 -47.5q40 -21 87 -16q-46 1 -82 29t-49 71l-2 3q-14 30 -9.5 67t25.5 66q22 30 56.5 46.5t72.5 14.5t73.5 -23.5t54.5 -55.5q46 -76 8 -158q-18 -39 -53.5 -66.5t-78.5 -35.5q-43 -9 -88.5 3.5 t-78.5 43.5q-74 68 -68 169q2 65 45 118.5t109.5 77t132.5 5.5q68 -16 118.5 -70.5t65 -124.5t-9.5 -144q-37 -107 -150 -158.5t-224 -8.5q-114 43 -170 158q-55 117 -17 238q35 121 152 191t246 47q131 -19 223 -128t95 -246z" />
38
+ <glyph unicode="&#xf218;" d="M1151 1835l151 85h-485q-264 0 -421 -129q-73 -64 -111.5 -147.5t-38.5 -167.5q0 -56 16 -109.5t49.5 -100.5t79.5 -82.5t109 -56.5t136 -21q19 0 75 5q0 -2 -4 -10.5t-4.5 -10.5t-3.5 -9.5t-4 -11l-3 -10.5t-2.5 -12.5t-1 -13t-0.5 -14.5q0 -26 5 -48t18.5 -45 t20.5 -32.5t26 -34.5q-61 -4 -98 -7.5t-107 -14.5t-131.5 -32.5t-112.5 -53.5q-50 -29 -86.5 -66.5t-56.5 -76.5t-29 -74.5t-9 -69.5q0 -66 32 -125.5t92.5 -107t159 -75.5t222.5 -28q117 0 218.5 25t174 68t124 99.5t76.5 120.5t25 131q0 40 -6.5 74.5t-22.5 65t-30.5 53 t-41.5 50t-45 43t-51 44.5l-85 66q-19 15 -28.5 24.5t-21 31t-11.5 45.5t12 47.5t21.5 34.5t32.5 33q37 29 59 48t52 52t46 64t28 75.5t12 94.5q0 43 -8 82t-23.5 70.5t-30.5 55.5t-38 47.5t-35 34.5t-32 27h146zM906 1238q-18 -19 -44 -33.5t-56.5 -23.5t-58.5 -9 q-58 0 -108 28.5t-83.5 73.5t-57.5 101.5t-34.5 111.5t-10.5 104q0 110 51 174q28 35 73.5 56t91.5 21q56 0 105.5 -28.5t83.5 -74.5t59 -103.5t36.5 -115.5t11.5 -110q0 -113 -59 -172zM2048 1152v-128h-256v-256h-128v256h-256v128h256v256h128v-256h256zM838 791 q51 -36 82 -59t63.5 -50.5t50.5 -48.5t33.5 -46t21.5 -50.5t6 -55.5q0 -113 -91 -183.5t-255 -70.5q-187 0 -300.5 80t-113.5 207q0 47 17 87.5t38.5 64.5t54 45t50.5 28.5t42 16.5q35 11 76.5 19.5t77.5 12t58.5 5t34.5 1.5q35 0 54 -3z" />
39
+ <glyph unicode="&#xf219;" d="M1438 1833q12 -5 32 -14.5t74.5 -45.5t101 -78.5t97 -114.5t78 -153t27.5 -194.5t-40 -238.5q-43 -89 -97 -157.5t-109.5 -110t-115.5 -69t-115.5 -37t-107.5 -12t-95.5 4t-76 13t-49.5 13.5l-18 6v-277q-1 -3 -2 -9t-6.5 -23t-14 -34t-24.5 -39.5t-36 -42t-51.5 -39.5 t-68.5 -33q-52 -19 -107 -20t-97 11.5t-76.5 27.5t-53.5 27l-18 13v280q33 -34 67 -55.5t67.5 -28.5t61.5 11t44 63v946h312v-538l65 -13q206 -32 329 60q105 78 128 243q2 76 -15.5 141t-49 110.5t-72.5 82.5t-86.5 59.5t-91.5 39t-87.5 24t-73.5 11.5t-52 5h-19l-66 -2 q-217 -16 -359 -141q-57 -50 -97 -115q-27 -45 -39.5 -93t-11 -88t10 -78.5t22 -67.5t25.5 -51t21 -33l9 -12l-225 -201q-7 9 -18.5 25t-40.5 68.5t-49.5 107.5t-34.5 137.5t-8.5 163t41 179.5t102.5 191q70 78 153.5 135t167 86.5t172 45.5t169 15t156.5 -8t137.5 -21 t107.5 -26.5t72 -22.5z" />
40
+ <glyph unicode="&#xf220;" d="M1857 834q51 -106 50 -217q0 -133 -65.5 -245.5t-178 -178t-244.5 -65.5q-123 0 -231 58q-79 -14 -155 -14q-171 0 -327 67t-269 180t-179.5 269t-66.5 327q0 86 17 169q-67 116 -67 247q0 133 65.5 245.5t178 178t245.5 65.5q141 0 260 -75q69 12 144 12 q171 0 327 -66.5t269 -179.5t179.5 -269t66.5 -327q0 -96 -19 -181zM1466 612q59 85 59 188q0 88 -34 149q-35 62 -96 100q-58 39 -143 66q-77 25 -187 49q-89 20 -116 28q-35 9 -68 27q-33 15 -50 38q-17 20 -17 49q0 46 52 80q54 36 146 36q97 0 141 -32q43 -32 75 -94 q30 -48 51 -67q25 -22 72 -22q53 0 87 36q34 35 34 81t-25 96q-24 47 -82 92q-57 45 -139 70q-86 26 -197 26q-139 0 -247 -40q-107 -39 -164 -113q-57 -73 -57 -170q0 -102 55 -170q52 -65 144 -105q95 -40 221 -66q93 -20 154 -38q57 -19 90 -50q33 -30 33 -80 q0 -64 -62 -105q-65 -44 -170 -44q-78 0 -123 22q-47 22 -70 54q-27 34 -49 86q-21 49 -49 72q-32 26 -75 26q-52 0 -87 -33q-36 -33 -36 -79q0 -75 54 -153q52 -76 139 -123q119 -63 302 -63q150 0 263 46q111 46 171 130z" />
41
+ <glyph unicode="&#xf221;" d="M1664 1024q0 -41 -24 -74t-62 -46q22 -33 22 -72q0 -41 -24 -74t-62 -46q22 -33 22 -72q0 -53 -37.5 -90.5t-90.5 -37.5h-64q53 0 90.5 -37.5t37.5 -90.5t-37.5 -90.5t-90.5 -37.5h-448q-65 0 -123 20t-93.5 44t-80.5 44t-87 20h-128v640h192q49 0 104 47t103.5 127.5 t80.5 204.5t32 261q0 5 0.5 13.5t4 31t9.5 39t19 30.5t31 14q33 0 77.5 -42t79.5 -119t35 -159q0 -85 -8 -165t-16 -117l-8 -38h416q53 0 90.5 -37.5t37.5 -90.5z" />
42
+ <glyph unicode="&#xf222;" d="M1843 1168q0 -55 -28 -100.5t-74 -72.5q14 -50 14 -99q0 -135 -98.5 -250t-267.5 -181.5t-368 -66.5t-368.5 66.5t-268 181t-98.5 249.5q0 50 16 104q-44 27 -70.5 71.5t-26.5 97.5q0 83 59 142t142 59q100 0 160 -83q183 97 412 106l92 457q5 22 23 33q18 12 39 7 l313 -72q24 41 65.5 65.5t89.5 24.5q74 0 126.5 -52.5t52.5 -126.5t-52.5 -126.5t-126.5 -52.5q-71 0 -122 48.5t-56 119.5l-262 60l-77 -386q222 -12 397 -108q60 86 163 86q83 0 141.5 -59t58.5 -142zM1600 1805q-32 0 -54.5 -22.5t-22.5 -54.5t22.5 -54.5t54.5 -22.5 t54.5 22.5t22.5 54.5t-22.5 54.5t-54.5 22.5zM1021 501q171 0 316.5 53t230.5 143.5t85 197.5q0 108 -85 199t-230.5 144t-316.5 53q-172 0 -317.5 -53t-230.5 -144t-85 -198t85 -198t230.5 -144t317.5 -53zM307 1168q0 -47 40 -75q47 75 132 137q-29 36 -73 36 q-41 0 -70 -28.5t-29 -69.5zM1698 1089q43 31 43 79q0 40 -28.5 69t-69.5 29q-45 0 -76 -39q83 -61 131 -138zM895 982q0 -46 -33 -79t-79 -33t-78.5 33t-32.5 79t32.5 79t78.5 33q47 0 79.5 -33t32.5 -79zM1265 1094q47 0 79.5 -33t32.5 -79t-33 -79t-79 -33t-79 33t-33 79 t32.5 79t79.5 33zM1224 776q15 15 36 15t36 -15t15 -36.5t-15 -36.5q-86 -86 -271 -86q-187 0 -273 86q-15 15 -15 36.5t15 36.5t36 15t36 -15q56 -56 199 -56q145 0 201 56z" />
43
+ <glyph unicode="&#xf223;" d="M1105 1233v92q0 34 -23.5 57t-57.5 23t-57.5 -23t-23.5 -57l-1 -481q-1 -138 -101.5 -235t-241.5 -97q-142 0 -242.5 99t-100.5 238v209h263v-206q0 -33 23.5 -56.5t57.5 -23.5t57.5 23.5t23.5 56.5v487q5 136 104.5 230.5t238.5 94.5t238.5 -95.5t104.5 -231.5v-107 l-157 -45zM1792 1058v-209q0 -139 -100.5 -238t-242.5 -99t-242 97.5t-102 236.5v210l105 -48l157 46v-212q0 -33 23.5 -56.5t57.5 -23.5t57.5 23.5t23.5 56.5v216h263z" />
44
+ <glyph unicode="&#xf224;" d="M512 1792h1024q106 0 181 -75t75 -181v-384q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5v384q0 106 75 181t181 75zM1024 1077l-293 294q-37 37 -91 37t-90 -37q-38 -37 -38 -90t38 -91l362 -362l4 4q37 -64 108 -64t108 64l5 -4 l362 362q37 38 37 91t-37 90t-91 37q-53 0 -90 -37z" />
45
  <glyph unicode="&#xf300;" d="M512 1536h1024q106 0 181 -75t75 -181v-384q0 -106 -75 -181t-181 -75h-448l-448 -448v448h-128q-106 0 -181 75t-75 181v384q0 106 75 181t181 75z" />
46
  <glyph unicode="&#xf301;" d="M1664 1152l-256 -640h-1024v1024h384l64 -128h448v-128h-640l-128 -256h128l64 128h960z" />
47
  <glyph unicode="&#xf302;" d="M1536 1536v-512l-768 -768l-512 512l768 768h512zM1280 1152q53 0 90.5 37.5t37.5 90.5t-37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5z" />
50
  <glyph unicode="&#xf305;" d="M1664 1664v-1280h-1408v1280h256v128h128v-128h640v128h128v-128h256zM1536 640v640q0 53 -37.5 90.5t-90.5 37.5h-896q-53 0 -90.5 -37.5t-37.5 -90.5v-640q0 -53 37.5 -90.5t90.5 -37.5h896q53 0 90.5 37.5t37.5 90.5zM832 1280h128q26 0 45 -19t19 -45v-512 q0 -26 -19 -45t-45 -19t-45 19t-19 45v448h-64q-26 0 -45 19t-19 45t19 45t45 19z" />
51
  <glyph unicode="&#xf306;" d="M1664 1664v-1280h-1408v1280h256v128h128v-128h640v128h128v-128h256zM1536 640v640q0 53 -37.5 90.5t-90.5 37.5h-896q-53 0 -90.5 -37.5t-37.5 -90.5v-640q0 -53 37.5 -90.5t90.5 -37.5h896q53 0 90.5 37.5t37.5 90.5zM1088 1280h2h1h3q22 -2 38.5 -18t19.5 -39v-2v-2 v-1v-2q0 -5 -2 -15l-128 -512q-6 -26 -28.5 -40t-48.5 -7q-26 6 -40 28.5t-7 48.5l108 433h-174q-26 0 -45 19t-19 45t19 45t45 19h256z" />
52
  <glyph unicode="&#xf307;" d="M1664 1664v-1280h-1408v1280h256v128h128v-128h640v128h128v-128h256zM1536 640v640q0 53 -37.5 90.5t-90.5 37.5h-896q-53 0 -90.5 -37.5t-37.5 -90.5v-640q0 -53 37.5 -90.5t90.5 -37.5h896q53 0 90.5 37.5t37.5 90.5zM768 1280h128v-128h-128v128zM1024 1280h128v-128 h-128v128zM1280 1280h128v-128h-128v128zM512 1024h128v-128h-128v128zM768 1024h128v-128h-128v128zM1024 1024h128v-128h-128v128zM1280 1024h128v-128h-128v128zM512 768h128v-128h-128v128zM768 768h128v-128h-128v128zM1024 768h128v-128h-128v128z" />
53
+ <glyph unicode="&#xf308;" d="M1914 1371l-181 -181q-37 38 -90 38t-91 -38l-181 -181q-37 -37 -37 -90t37 -91l-181 -181l-227 226l-395 -395q-68 -68 -113.5 -93t-112.5 -43q12 45 22 71t38 66.5t76 88.5l395 395l-227 227l181 181q37 -37 90.5 -37t91.5 37l181 181q38 38 38 91t-38 90l181 181z" />
54
  <glyph unicode="&#xf400;" d="M1792 384l-128 -128l-495 495q-153 -111 -337 -111q-117 0 -223.5 45.5t-184 123t-123 184t-45.5 223.5t45.5 223.5t123 184t184 123t223.5 45.5t223.5 -45.5t184 -123t123 -184t45.5 -223.5q0 -184 -111 -337zM832 768q186 0 317 131.5t131 316.5t-131 316.5t-317 131.5 q-185 0 -316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" />
55
  <glyph unicode="&#xf401;" d="M1792 384l-128 -128l-495 495q-153 -111 -337 -111q-117 0 -223.5 45.5t-184 123t-123 184t-45.5 223.5t45.5 223.5t123 184t184 123t223.5 45.5t223.5 -45.5t184 -123t123 -184t45.5 -223.5q0 -184 -111 -337zM832 768q186 0 317 131.5t131 316.5t-131 316.5t-317 131.5 q-185 0 -316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5zM512 1280h640v-128h-640v128z" />
56
  <glyph unicode="&#xf402;" d="M1664 256l-495 495q-153 -111 -337 -111q-117 0 -223.5 45.5t-184 123t-123 184t-45.5 223.5t45.5 223.5t123 184t184 123t223.5 45.5t223.5 -45.5t184 -123t123 -184t45.5 -223.5q0 -184 -111 -337l495 -495zM384 1216q0 -185 131.5 -316.5t316.5 -131.5 q186 0 317 131.5t131 316.5t-131 316.5t-317 131.5q-185 0 -316.5 -131.5t-131.5 -316.5zM1152 1152h-256v-256h-128v256h-256v128h256v256h128v-256h256v-128z" />
60
  <glyph unicode="&#xf406;" d="M1216 1088l832 -832l-128 -128l-832 832l-832 -832l-128 128l832 832l-832 832l128 128l832 -832l832 832l128 -128z" />
61
  <glyph unicode="&#xf407;" d="M1536 1408v-128h-1152v128l256 128q0 53 37.5 90.5t90.5 37.5h384q53 0 90.5 -37.5t37.5 -90.5zM832 1408h256q26 0 45 19t19 45t-19 45t-45 19h-256q-26 0 -45 -19t-19 -45t19 -45t45 -19zM1408 1216v-704q0 -53 -37.5 -90.5t-90.5 -37.5h-640q-53 0 -90.5 37.5 t-37.5 90.5v704h128v-704h128v704h128v-704h128v704h128v-704h128v704h128z" />
62
  <glyph unicode="&#xf408;" d="M844 1150l-588 1l476 -330l-183 -535l475 332l475 -332l-183 535l476 330l-587 -1l-181 535z" />
63
+ <glyph unicode="&#xf409;" d="M1664 1152l-128 -128v-512h-1024v512l-128 128l640 512zM1152 1024h-256v-448h256v448z" />
64
+ <glyph unicode="&#xf410;" d="M1792 1536v-128l-768 -384l-768 384v128h1536zM1024 832l768 384v-704h-1536v704z" />
65
  <glyph unicode="&#xf411;" d="M1728 1280l-896 -896h-448v448l896 896zM685 941l96 -96l595 595l-96 96zM1440 1376l-595 -595l96 -96l595 595zM896 640l-256 256l-128 -128l256 -256z" />
66
  <glyph unicode="&#xf412;" d="M1280 192v448h-1024v704l384 384v-704h640v448l640 -640z" />
67
  <glyph unicode="&#xf413;" d="M256 1536v256q209 0 408 -55t367.5 -154t310.5 -241t241 -310.5t154 -367.5t55 -408h-256q0 260 -101.5 497t-273 408.5t-408.5 273t-497 101.5zM256 1024v256q209 0 398.5 -81t326.5 -218t218 -326.5t81 -398.5h-256q0 209 -103 385.5t-279.5 279.5t-385.5 103zM640 448 q0 80 -56 136t-136 56t-136 -56t-56 -136t56 -136t136 -56t136 56t56 136z" />
94
  <glyph unicode="&#xf440;" d="M1641 1024h23q106 0 181 -75t75 -181t-75 -181t-181 -75h-384v256h-512v-256h-384q-106 0 -181 75t-75 181t75 181t181 75h6q-6 32 -6 64q0 133 93.5 226.5t226.5 93.5q134 0 228 -96q47 101 140.5 162.5t207.5 61.5q159 0 271.5 -112.5t112.5 -271.5q0 -62 -23 -128z M1152 384h256l-384 -384l-384 384h256v256h256v-256z" />
95
  <glyph unicode="&#xf441;" d="M1641 1024h23q106 0 181 -75t75 -181t-75 -181t-181 -75h-512v256h256l-384 384l-384 -384h256v-256h-512q-106 0 -181 75t-75 181t75 181t181 75h6q-6 32 -6 64q0 133 93.5 226.5t226.5 93.5q134 0 228 -96q47 101 140.5 162.5t207.5 61.5q159 0 271.5 -112.5 t112.5 -271.5q0 -62 -23 -128z" />
96
  <glyph unicode="&#xf442;" d="M1664 1664v-640h-128v422l-550 -550l-90 91l550 549h-422v128h640zM1280 896l128 128v-512h-896v896h512l-128 -128h-256v-640h640v256z" />
97
+ <glyph unicode="&#xf443;" d="M1536 1280v-896h-1024v1280h640zM1408 1152h-384v384h-384v-1024h768v640z" />
98
  <glyph unicode="&#xf444;" d="M1664 640h-64q-53 0 -90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5h64v-128h-1024q-106 0 -181 75t-75 181v1024q0 106 75 181t181 75h1024v-1152zM640 384h818q-50 55 -50 128t50 128h-818q-53 0 -90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5z" />
99
  <glyph unicode="&#xf445;" d="M1888 748l-58 -140l-305 22q-44 -56 -107 -107l22 -305l-139 -58l-201 232q-67 -8 -76 -8q-8 0 -75 8l-201 -232l-139 58l21 305q-56 44 -107 107l-305 -22l-58 139l232 201q-8 67 -8 76q0 8 8 75l-232 201l58 139l305 -21q47 60 107 107l-21 305l139 58l201 -232 q67 8 75 8t75 -8l201 232l140 -58l-22 -305q56 -44 107 -107l305 22l58 -139l-232 -201q8 -67 8 -76q0 -8 -8 -75zM1024 768q106 0 181 75t75 181t-75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75z" />
100
  <glyph unicode="&#xf446;" d="M1024 1792q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM1536 1024q0 212 -150 362t-362 150q-136 0 -259 -72l699 -699q72 123 72 259zM512 1024 q0 -212 150 -362t362 -150q135 0 259 72l-699 699q-72 -126 -72 -259z" />
112
  <glyph unicode="&#xf458;" d="M896 384v480l-768 -480v1280l768 -480v480l1024 -640z" />
113
  <glyph unicode="&#xf459;" d="M1152 384v480l768 -480v1280l-768 -480v480l-1024 -640z" />
114
  <glyph unicode="&#xf460;" d="M896 1280l-256 -768h-128l-256 768h128l86 256h340zM1792 1280l-256 -768h-768l256 768h128l86 256h340l86 -256h128zM747 1280l-43 128h-128l-43 -128h214zM1515 1280l-43 128h-128l-43 -128h214z" />
115
+ <glyph unicode="&#xf461;" d="M1024 384l648 613q112 106 120 264t-93 276t-251.5 126.5t-262.5 -97.5l-161 -153l-161 153q-112 106 -262.5 97.5t-251.5 -126.5t-93 -276t120 -264z" />
116
+ <glyph unicode="&#xf462;" d="M1276 1505l-248 62l-256 -1024l248 -62zM619 711l-209 313l209 313l-213 142l-304 -455l304 -455zM1946 1024l-303 455l-213 -142l208 -313l-208 -313l213 -142z" />
117
+ <glyph unicode="&#xf463;" d="M768 1024l-768 384v128h1536v-128zM1024 512h-1024v704l768 -384l256 128v-448zM1280 1152h640q53 0 90.5 -37.5t37.5 -90.5v-640q0 -53 -37.5 -90.5t-90.5 -37.5h-640q-53 0 -90.5 37.5t-37.5 90.5v640q0 53 37.5 90.5t90.5 37.5zM1920 768h-256v256h-128v-256h-256 v-128h256v-256h128v256h256v128z" />
118
+ <glyph unicode="&#xf464;" d="M768 1024l-768 384v128h1536v-128zM1024 512h-1024v704l768 -384l256 128v-448zM1280 1152h640q53 0 90.5 -37.5t37.5 -90.5v-640q0 -53 -37.5 -90.5t-90.5 -37.5h-640q-53 0 -90.5 37.5t-37.5 90.5v640q0 53 37.5 90.5t90.5 37.5zM1920 768h-640v-128h640v128z" />
119
+ <glyph unicode="&#xf465;" d="M768 1024l-768 384v128h1536v-128zM768 832l256 128v-448h-1024v704zM1280 1152h640q53 0 90.5 -37.5t37.5 -90.5v-640q0 -53 -37.5 -90.5t-90.5 -37.5h-640q-53 0 -90.5 37.5t-37.5 90.5v640q0 53 37.5 90.5t90.5 37.5zM1984 837l-90 90l-362 -362l-181 181l-91 -90 l272 -272z" />
120
+ <glyph unicode="&#xf466;" d="M320 1024l320 -320v-320l-640 640l640 640v-320zM1152 1280h256q212 0 362 -150t150 -362v-300l-150 150q-74 74 -168 112t-194 38h-256v-384l-640 640l640 640v-384z" />
121
+ <glyph unicode="&#xf467;" d="M1024 1280h256q212 0 362 -150t150 -362v-300l-150 150q-74 74 -168 112t-194 38h-256v-384l-640 640l640 640v-384z" />
122
+ <glyph unicode="&#xf468;" d="M256 1792h256v-1536h-256v1536zM1792 1664v-768h-256q-70 0 -125.5 13t-93 32l-75 38t-93 32t-125.5 13q-71 0 -125 -13t-85 -32t-56.5 -38t-54 -32t-63.5 -13v768q35 0 63.5 13t54 32t56.5 38t85 32t125 13q70 0 125.5 -13t93 -32l75 -38t93 -32t125.5 -13h256z" />
123
+ <glyph unicode="&#xf469;" d="M1408 1664h-768v-256h768v256zM1792 1280v-768h-256v384h-1024v-384h-256v768h1536zM1633 256h-768l-112 113q-113 113 -113 271v128h768v-128q0 -158 113 -271z" />
124
+ <glyph unicode="&#xf470;" d="M1536 1280v-128q53 0 90.5 -37.5t37.5 -90.5v-640q0 -53 -37.5 -90.5t-90.5 -37.5h-1024q-53 0 -90.5 37.5t-37.5 90.5v640q0 53 37.5 90.5t90.5 37.5v128q0 212 150 362t362 150t362 -150t150 -362zM1280 1152v128q0 106 -75 181t-181 75t-181 -75t-75 -181v-128h512z " />
125
+ <glyph unicode="&#xf471;" d="M1223 1121q83 -39 134 -117t51 -172q0 -133 -93.5 -226.5t-226.5 -93.5h-576v1024h512q106 0 181 -75t75 -181q0 -87 -57 -159zM768 1152h128q53 0 90.5 37.5t37.5 90.5t-37.5 90.5t-90.5 37.5h-128v-256zM768 640h192q80 0 136 56t56 136t-56 136t-136 56h-192v-384z " />
126
+ <glyph unicode="&#xf472;" d="M1240 1408l-240 -768h128l-40 -128h-448l40 128h128l240 768h-128l40 128h448l-40 -128h-128z" />
127
+ <glyph unicode="&#xf473;" d="M1664 1664v-1280h-1280v1280h1280zM768 1408q-53 0 -90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5t-37.5 90.5t-90.5 37.5zM1536 1088l-128 192l-448 -672l-192 288l-256 -384h1024v576z" />
128
  <glyph unicode="&#xf500;" d="M128 0l960 960l960 -960h-1920z" />
129
  <glyph unicode="&#xf501;" d="M0 128l960 960l-960 960v-1920z" />
130
  <glyph unicode="&#xf502;" d="M128 2048l960 -960l960 960h-1920z" />
_inc/genericons/font/genericons-regular-webfont.ttf CHANGED
Binary file
_inc/genericons/font/genericons-regular-webfont.woff CHANGED
Binary file
_inc/genericons/genericons.css CHANGED
@@ -16,7 +16,7 @@
16
 
17
  @font-face {
18
  font-family: 'Genericons';
19
- src: url(data:application/font-woff;charset=utf-8;base64,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) format('woff'),
20
  url('font/genericons-regular-webfont.ttf') format('truetype'),
21
  url('font/genericons-regular-webfont.svg#genericonsregular') format('svg');
22
  font-weight: normal;
@@ -57,116 +57,136 @@
57
  */
58
 
59
  /* Post formats */
60
- .genericon-standard:before { content: '\f100'; }
61
- .genericon-aside:before { content: '\f101'; }
62
- .genericon-image:before { content: '\f102'; }
63
- .genericon-gallery:before { content: '\f103'; }
64
- .genericon-video:before { content: '\f104'; }
65
- .genericon-status:before { content: '\f105'; }
66
- .genericon-quote:before { content: '\f106'; }
67
- .genericon-link:before { content: '\f107'; }
68
- .genericon-chat:before { content: '\f108'; }
69
- .genericon-audio:before { content: '\f109'; }
70
 
71
  /* Social icons */
72
- .genericon-github:before { content: '\f200'; }
73
- .genericon-dribbble:before { content: '\f201'; }
74
- .genericon-twitter:before { content: '\f202'; }
75
- .genericon-facebook:before { content: '\f203'; }
76
- .genericon-facebook-alt:before { content: '\f204'; }
77
- .genericon-wordpress:before { content: '\f205'; }
78
- .genericon-googleplus:before { content: '\f206'; }
79
- .genericon-linkedin:before { content: '\f207'; }
80
- .genericon-linkedin-alt:before { content: '\f208'; }
81
- .genericon-pinterest:before { content: '\f209'; }
82
- .genericon-pinterest-alt:before { content: '\f210'; }
83
- .genericon-flickr:before { content: '\f211'; }
84
- .genericon-vimeo:before { content: '\f212'; }
85
- .genericon-youtube:before { content: '\f213'; }
86
- .genericon-tumblr:before { content: '\f214'; }
87
- .genericon-instagram:before { content: '\f215'; }
88
- .genericon-codepen:before { content: '\f216'; }
89
- .genericon-polldaddy:before { content: '\f217'; }
 
 
 
 
 
 
 
90
 
91
  /* Meta icons */
92
- .genericon-comment:before { content: '\f300'; }
93
- .genericon-category:before { content: '\f301'; }
94
- .genericon-tag:before { content: '\f302'; }
95
- .genericon-time:before { content: '\f303'; }
96
- .genericon-user:before { content: '\f304'; }
97
- .genericon-day:before { content: '\f305'; }
98
- .genericon-week:before { content: '\f306'; }
99
- .genericon-month:before { content: '\f307'; }
100
- .genericon-pinned:before { content: '\f308'; }
101
 
102
  /* Other icons */
103
- .genericon-search:before { content: '\f400'; }
104
- .genericon-unzoom:before { content: '\f401'; }
105
- .genericon-zoom:before { content: '\f402'; }
106
- .genericon-show:before { content: '\f403'; }
107
- .genericon-hide:before { content: '\f404'; }
108
- .genericon-close:before { content: '\f405'; }
109
- .genericon-close-alt:before { content: '\f406'; }
110
- .genericon-trash:before { content: '\f407'; }
111
- .genericon-star:before { content: '\f408'; }
112
- .genericon-home:before { content: '\f409'; }
113
- .genericon-mail:before { content: '\f410'; }
114
- .genericon-edit:before { content: '\f411'; }
115
- .genericon-reply:before { content: '\f412'; }
116
- .genericon-feed:before { content: '\f413'; }
117
- .genericon-warning:before { content: '\f414'; }
118
- .genericon-share:before { content: '\f415'; }
119
- .genericon-attachment:before { content: '\f416'; }
120
- .genericon-location:before { content: '\f417'; }
121
- .genericon-checkmark:before { content: '\f418'; }
122
- .genericon-menu:before { content: '\f419'; }
123
- .genericon-top:before { content: '\f420'; }
124
- .genericon-minimize:before { content: '\f421'; }
125
- .genericon-maximize:before { content: '\f422'; }
126
- .genericon-404:before { content: '\f423'; }
127
- .genericon-spam:before { content: '\f424'; }
128
- .genericon-summary:before { content: '\f425'; }
129
- .genericon-cloud:before { content: '\f426'; }
130
- .genericon-key:before { content: '\f427'; }
131
- .genericon-dot:before { content: '\f428'; }
132
- .genericon-next:before { content: '\f429'; }
133
- .genericon-previous:before { content: '\f430'; }
134
- .genericon-expand:before { content: '\f431'; }
135
- .genericon-collapse:before { content: '\f432'; }
136
- .genericon-dropdown:before { content: '\f433'; }
137
- .genericon-dropdown-left:before { content: '\f434'; }
138
- .genericon-top:before { content: '\f435'; }
139
- .genericon-draggable:before { content: '\f436'; }
140
- .genericon-phone:before { content: '\f437'; }
141
- .genericon-send-to-phone:before { content: '\f438'; }
142
- .genericon-plugin:before { content: '\f439'; }
143
- .genericon-cloud-download:before { content: '\f440'; }
144
- .genericon-cloud-upload:before { content: '\f441'; }
145
- .genericon-external:before { content: '\f442'; }
146
- .genericon-document:before { content: '\f443'; }
147
- .genericon-book:before { content: '\f444'; }
148
- .genericon-cog:before { content: '\f445'; }
149
- .genericon-unapprove:before { content: '\f446'; }
150
- .genericon-cart:before { content: '\f447'; }
151
- .genericon-pause:before { content: '\f448'; }
152
- .genericon-stop:before { content: '\f449'; }
153
- .genericon-skip-back:before { content: '\f450'; }
154
- .genericon-skip-ahead:before { content: '\f451'; }
155
- .genericon-play:before { content: '\f452'; }
156
- .genericon-tablet:before { content: '\f453'; }
157
- .genericon-send-to-tablet:before { content: '\f454'; }
158
- .genericon-info:before { content: '\f455'; }
159
- .genericon-notice:before { content: '\f456'; }
160
- .genericon-help:before { content: '\f457'; }
161
- .genericon-fastforward:before { content: '\f458'; }
162
- .genericon-rewind:before { content: '\f459'; }
163
- .genericon-portfolio:before { content: '\f460'; }
 
 
 
 
 
 
 
 
 
 
 
 
 
164
 
165
  /* Generic shapes */
166
- .genericon-uparrow:before { content: '\f500'; }
167
- .genericon-rightarrow:before { content: '\f501'; }
168
- .genericon-downarrow:before { content: '\f502'; }
169
- .genericon-leftarrow:before { content: '\f503'; }
170
 
171
 
172
 
16
 
17
  @font-face {
18
  font-family: 'Genericons';
19
+ src: url(data:application/font-woff;charset=utf-8;base64,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) format('woff'),
20
  url('font/genericons-regular-webfont.ttf') format('truetype'),
21
  url('font/genericons-regular-webfont.svg#genericonsregular') format('svg');
22
  font-weight: normal;
57
  */
58
 
59
  /* Post formats */
60
+ .genericon-standard:before { content: '\f100'; }
61
+ .genericon-aside:before { content: '\f101'; }
62
+ .genericon-image:before { content: '\f102'; }
63
+ .genericon-gallery:before { content: '\f103'; }
64
+ .genericon-video:before { content: '\f104'; }
65
+ .genericon-status:before { content: '\f105'; }
66
+ .genericon-quote:before { content: '\f106'; }
67
+ .genericon-link:before { content: '\f107'; }
68
+ .genericon-chat:before { content: '\f108'; }
69
+ .genericon-audio:before { content: '\f109'; }
70
 
71
  /* Social icons */
72
+ .genericon-github:before { content: '\f200'; }
73
+ .genericon-dribbble:before { content: '\f201'; }
74
+ .genericon-twitter:before { content: '\f202'; }
75
+ .genericon-facebook:before { content: '\f203'; }
76
+ .genericon-facebook-alt:before { content: '\f204'; }
77
+ .genericon-wordpress:before { content: '\f205'; }
78
+ .genericon-googleplus:before { content: '\f206'; }
79
+ .genericon-linkedin:before { content: '\f207'; }
80
+ .genericon-linkedin-alt:before { content: '\f208'; }
81
+ .genericon-pinterest:before { content: '\f209'; }
82
+ .genericon-pinterest-alt:before { content: '\f210'; }
83
+ .genericon-flickr:before { content: '\f211'; }
84
+ .genericon-vimeo:before { content: '\f212'; }
85
+ .genericon-youtube:before { content: '\f213'; }
86
+ .genericon-tumblr:before { content: '\f214'; }
87
+ .genericon-instagram:before { content: '\f215'; }
88
+ .genericon-codepen:before { content: '\f216'; }
89
+ .genericon-polldaddy:before { content: '\f217'; }
90
+ .genericon-googleplus-alt:before { content: '\f218'; }
91
+ .genericon-path:before { content: '\f219'; }
92
+ .genericon-skype:before { content: '\f220'; }
93
+ .genericon-digg:before { content: '\f221'; }
94
+ .genericon-reddit:before { content: '\f222'; }
95
+ .genericon-stumbleupon:before { content: '\f223'; }
96
+ .genericon-pocket:before { content: '\f224'; }
97
 
98
  /* Meta icons */
99
+ .genericon-comment:before { content: '\f300'; }
100
+ .genericon-category:before { content: '\f301'; }
101
+ .genericon-tag:before { content: '\f302'; }
102
+ .genericon-time:before { content: '\f303'; }
103
+ .genericon-user:before { content: '\f304'; }
104
+ .genericon-day:before { content: '\f305'; }
105
+ .genericon-week:before { content: '\f306'; }
106
+ .genericon-month:before { content: '\f307'; }
107
+ .genericon-pinned:before { content: '\f308'; }
108
 
109
  /* Other icons */
110
+ .genericon-search:before { content: '\f400'; }
111
+ .genericon-unzoom:before { content: '\f401'; }
112
+ .genericon-zoom:before { content: '\f402'; }
113
+ .genericon-show:before { content: '\f403'; }
114
+ .genericon-hide:before { content: '\f404'; }
115
+ .genericon-close:before { content: '\f405'; }
116
+ .genericon-close-alt:before { content: '\f406'; }
117
+ .genericon-trash:before { content: '\f407'; }
118
+ .genericon-star:before { content: '\f408'; }
119
+ .genericon-home:before { content: '\f409'; }
120
+ .genericon-mail:before { content: '\f410'; }
121
+ .genericon-edit:before { content: '\f411'; }
122
+ .genericon-reply:before { content: '\f412'; }
123
+ .genericon-feed:before { content: '\f413'; }
124
+ .genericon-warning:before { content: '\f414'; }
125
+ .genericon-share:before { content: '\f415'; }
126
+ .genericon-attachment:before { content: '\f416'; }
127
+ .genericon-location:before { content: '\f417'; }
128
+ .genericon-checkmark:before { content: '\f418'; }
129
+ .genericon-menu:before { content: '\f419'; }
130
+ .genericon-refresh:before { content: '\f420'; }
131
+ .genericon-minimize:before { content: '\f421'; }
132
+ .genericon-maximize:before { content: '\f422'; }
133
+ .genericon-404:before { content: '\f423'; }
134
+ .genericon-spam:before { content: '\f424'; }
135
+ .genericon-summary:before { content: '\f425'; }
136
+ .genericon-cloud:before { content: '\f426'; }
137
+ .genericon-key:before { content: '\f427'; }
138
+ .genericon-dot:before { content: '\f428'; }
139
+ .genericon-next:before { content: '\f429'; }
140
+ .genericon-previous:before { content: '\f430'; }
141
+ .genericon-expand:before { content: '\f431'; }
142
+ .genericon-collapse:before { content: '\f432'; }
143
+ .genericon-dropdown:before { content: '\f433'; }
144
+ .genericon-dropdown-left:before { content: '\f434'; }
145
+ .genericon-top:before { content: '\f435'; }
146
+ .genericon-draggable:before { content: '\f436'; }
147
+ .genericon-phone:before { content: '\f437'; }
148
+ .genericon-send-to-phone:before { content: '\f438'; }
149
+ .genericon-plugin:before { content: '\f439'; }
150
+ .genericon-cloud-download:before { content: '\f440'; }
151
+ .genericon-cloud-upload:before { content: '\f441'; }
152
+ .genericon-external:before { content: '\f442'; }
153
+ .genericon-document:before { content: '\f443'; }
154
+ .genericon-book:before { content: '\f444'; }
155
+ .genericon-cog:before { content: '\f445'; }
156
+ .genericon-unapprove:before { content: '\f446'; }
157
+ .genericon-cart:before { content: '\f447'; }
158
+ .genericon-pause:before { content: '\f448'; }
159
+ .genericon-stop:before { content: '\f449'; }
160
+ .genericon-skip-back:before { content: '\f450'; }
161
+ .genericon-skip-ahead:before { content: '\f451'; }
162
+ .genericon-play:before { content: '\f452'; }
163
+ .genericon-tablet:before { content: '\f453'; }
164
+ .genericon-send-to-tablet:before { content: '\f454'; }
165
+ .genericon-info:before { content: '\f455'; }
166
+ .genericon-notice:before { content: '\f456'; }
167
+ .genericon-help:before { content: '\f457'; }
168
+ .genericon-fastforward:before { content: '\f458'; }
169
+ .genericon-rewind:before { content: '\f459'; }
170
+ .genericon-portfolio:before { content: '\f460'; }
171
+ .genericon-heart:before { content: '\f461'; }
172
+ .genericon-code:before { content: '\f462'; }
173
+ .genericon-subscribe:before { content: '\f463'; }
174
+ .genericon-unsubscribe:before { content: '\f464'; }
175
+ .genericon-subscribed:before { content: '\f465'; }
176
+ .genericon-reply-alt:before { content: '\f466'; }
177
+ .genericon-reply-single:before { content: '\f467'; }
178
+ .genericon-flag:before { content: '\f468'; }
179
+ .genericon-print:before { content: '\f469'; }
180
+ .genericon-lock:before { content: '\f470'; }
181
+ .genericon-bold:before { content: '\f471'; }
182
+ .genericon-italic:before { content: '\f472'; }
183
+ .genericon-picture:before { content: '\f473'; }
184
 
185
  /* Generic shapes */
186
+ .genericon-uparrow:before { content: '\f500'; }
187
+ .genericon-rightarrow:before { content: '\f501'; }
188
+ .genericon-downarrow:before { content: '\f502'; }
189
+ .genericon-leftarrow:before { content: '\f503'; }
190
 
191
 
192
 
_inc/images/jetpack-icon.svg ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
+ <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="20px" height="20px" viewBox="0 0 20 20" enable-background="new 0 0 20 20" xml:space="preserve">
4
+ <g id="jetpack">
5
+ <path fill="#999999" d="M8.5,17.963L7.946,17.25c-0.688,0.243-1.528,0.391-2.446,0.391s-1.758-0.146-2.447-0.391L2.5,17.963c0,0.711,1.343,1.287,3,1.287S8.5,18.674,8.5,17.963z"/>
6
+ <path fill="#999999" d="M10.675,16.963l0.554-0.713c0.689,0.243,1.528,0.391,2.446,0.391s1.757-0.146,2.446-0.391l0.554,0.713c0,0.711-1.343,1.287-3,1.287S10.675,17.674,10.675,16.963z"/>
7
+ <g>
8
+ <rect x="4" y="10" fill="#999999" width="1" height="1"/>
9
+ <path fill="#999999" d="M15.043,1.043c-0.412-0.229-0.908-0.375-1.455-0.375c-0.553,0.001-1.051,0.148-1.463,0.381c-0.878,0.883-1.598,2.546-2.045,4.643C10.105,5.789,10.125,5.899,10.148,6H8.977C8.515,4.081,7.824,2.558,6.994,1.723C6.572,1.485,6.064,1.334,5.5,1.334C4.939,1.333,4.434,1.481,4.014,1.716c-1.521,1.521-2.602,5.296-2.602,9.722c0,1.646,0.154,3.198,0.42,4.584C2.562,16.604,3.922,17,5.5,17s2.939-0.396,3.668-0.979C9.291,15.381,9.387,14.704,9.457,14h1.159c-0.046,0.451-0.091,0.906-0.159,1.333C11.215,15.738,12.326,16,13.588,16c1.544,0,2.875-0.389,3.59-0.958c0.26-1.354,0.41-2.874,0.41-4.485C17.588,6.225,16.531,2.531,15.043,1.043z M6,9v3H5.623c0.117,1.055,0.319,2.077,0.627,3h-2c-0.308-0.923-0.51-1.945-0.627-3H3V9h0.535C3.613,7.592,3.846,6.213,4.25,5h2C5.846,6.213,5.613,7.592,5.535,9H6z M5.5,3.625c-0.828,0-1.5-0.336-1.5-0.75s0.672-0.75,1.5-0.75S7,2.461,7,2.875S6.328,3.625,5.5,3.625z M9.535,13c0.031-0.511,0.053-1.029,0.053-1.562C9.588,9.85,9.443,8.35,9.195,7h1.174c0.25,1.346,0.393,2.848,0.393,4.438c0,0.537-0.029,1.055-0.062,1.562H9.535z M12.125,2.15c0-0.414,0.672-0.75,1.5-0.75s1.5,0.336,1.5,0.75s-0.672,0.75-1.5,0.75S12.125,2.564,12.125,2.15z M16,11h-0.623c-0.117,1.055-0.318,2.077-0.627,3h-2c0.309-0.923,0.51-1.945,0.627-3H13V8h0.465c-0.078-1.408-0.311-2.787-0.715-4h2c0.404,1.213,0.637,2.592,0.715,4H16V11z"/>
10
+ <rect x="14" y="9" fill="#999999" width="1" height="1"/>
11
+ </g>
12
+ </g>
13
+ </svg>
_inc/images/module-icons-sprite-2x.png CHANGED
Binary file
_inc/images/module-icons-sprite.png CHANGED
Binary file
_inc/jetpack-icons/font/jetpack.eot ADDED
Binary file
_inc/jetpack-icons/font/jetpack.svg ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
3
+ <svg xmlns="http://www.w3.org/2000/svg">
4
+ <metadata>Generated by IcoMoon</metadata>
5
+ <defs>
6
+ <font id="jetpack" horiz-adv-x="1024">
7
+ <font-face units-per-em="1024" ascent="960" descent="-64" />
8
+ <missing-glyph horiz-adv-x="1024" />
9
+ <glyph unicode="&#x20;" d="" horiz-adv-x="512" />
10
+ <glyph unicode="&#xe600;" d="M435.2 40.294l-28.365 36.506c-35.226-12.442-78.234-20.019-125.235-20.019s-90.010 7.475-125.286 20.019l-28.314-36.506c0-36.403 68.762-65.894 153.6-65.894s153.6 29.491 153.6 65.894zM546.56 91.494l28.365 36.506c35.277-12.442 78.234-20.019 125.235-20.019s89.958 7.475 125.235 20.019l28.365-36.506c0-36.403-68.762-65.894-153.6-65.894s-153.6 29.491-153.6 65.894zM204.8 448h51.2v-51.2h-51.2v51.2zM770.202 906.598c-21.094 11.725-46.49 19.2-74.496 19.2-28.314-0.051-53.811-7.578-74.906-19.507-44.954-45.21-81.818-130.355-104.704-237.722 1.28-4.966 2.304-10.598 3.482-15.77h-59.955c-23.654 98.253-59.034 176.23-101.53 218.982-21.606 12.186-47.616 19.917-76.493 19.917-28.723 0.051-54.579-7.526-76.083-19.558-77.875-77.875-133.222-271.155-133.222-497.766 0-84.275 7.885-163.738 21.504-234.701 37.376-29.798 107.008-50.074 187.802-50.074s150.477 20.275 187.802 50.125c6.298 32.768 11.213 67.43 14.797 103.475h59.341c-2.355-23.091-4.659-46.387-8.141-68.25 38.81-20.736 95.693-34.15 160.307-34.15 79.053 0 147.2 19.917 183.808 49.050 13.312 69.325 20.992 147.149 20.992 229.632 0 221.798-54.118 410.931-130.304 487.117zM307.2 499.2v-153.6h-19.302c5.99-54.016 16.333-106.342 32.102-153.6h-102.4c-15.77 47.258-26.112 99.584-32.102 153.6h-31.898v153.6h27.392c3.994 72.090 15.923 142.694 36.608 204.8h102.4c-20.685-62.106-32.614-132.71-36.608-204.8h23.808zM281.6 774.4c-42.394 0-76.8 17.203-76.8 38.4s34.406 38.4 76.8 38.4 76.8-17.203 76.8-38.4-34.406-38.4-76.8-38.4zM488.192 294.4c1.587 26.163 2.714 52.685 2.714 79.974 0 81.306-7.424 158.106-20.122 227.226h60.109c12.8-68.915 20.122-145.818 20.122-227.226 0-27.494-1.485-54.016-3.174-79.974h-59.648zM620.8 849.92c0 21.197 34.406 38.4 76.8 38.4s76.8-17.203 76.8-38.4-34.406-38.4-76.8-38.4-76.8 17.203-76.8 38.4zM819.2 396.8h-31.898c-5.99-54.016-16.282-106.342-32.102-153.6h-102.4c15.821 47.258 26.112 99.584 32.102 153.6h-19.302v153.6h23.808c-3.994 72.090-15.923 142.694-36.608 204.8h102.4c20.685-62.106 32.614-132.71 36.608-204.8h27.392v-153.6zM716.8 499.2h51.2v-51.2h-51.2v51.2z" />
11
+ </font></defs></svg>
_inc/jetpack-icons/font/jetpack.ttf ADDED
Binary file
_inc/jetpack-icons/font/jetpack.woff ADDED
Binary file
_inc/jetpack-icons/jetpack-icons.css ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ @font-face {
3
+ font-family: 'Jetpack';
4
+ src:url('font/jetpack.eot');
5
+ src:url('font/jetpack.eot?#iefix') format('embedded-opentype'),
6
+ url('font/jetpack.ttf') format('truetype'),
7
+ url('font/jetpack.woff') format('woff'),
8
+ url('font/jetpack.svg#jetpack') format('svg');
9
+ font-weight: normal;
10
+ font-style: normal;
11
+ }
_inc/jetpack.css CHANGED
@@ -30,79 +30,79 @@
30
  */
31
 
32
  /* Force the menu not to be sticky, so we can color the arrow. */
33
- .toplevel_page_jetpack.mp6.sticky-menu #adminmenuwrap,
34
- body[class*=" jetpack_page_jetpack_"].mp6.sticky-menu #adminmenuwrap {
35
  position: relative;
36
  z-index: auto;
37
  top: 0;
38
  }
39
 
40
- .toplevel_page_jetpack.mp6 ul#adminmenu a.wp-has-current-submenu:after,
41
- .toplevel_page_jetpack.mp6 ul#adminmenu > li.current > a.current:after,
42
- body[class*=" jetpack_page_jetpack_"].mp6 ul#adminmenu a.wp-has-current-submenu:after,
43
- body[class*=" jetpack_page_jetpack_"].mp6 ul#adminmenu > li.current > a.current:after {
44
  border-right-color:#8fad4b;
45
  }
46
 
47
  .toplevel_page_jetpack.jetpack-disconnected #wpwrap,
48
- body[class*=" jetpack_page_jetpack_"].jetpack-disconnected #wpwrap {
49
- background: url(images/header-clouds.png) -150px -60px repeat-x;
50
  }
51
 
52
- .toplevel_page_jetpack.jetpack-disconnected.mp6 #wpwrap,
53
- body[class*=" jetpack_page_jetpack_"].jetpack-disconnected.mp6 #wpwrap {
54
- background-position: -143px -60px;
55
  }
56
 
57
  .toplevel_page_jetpack.jetpack-disconnected.folded #wpwrap,
58
- body[class*=" jetpack_page_jetpack_"].jetpack-disconnected.folded #wpwrap {
59
- background-position: -263px -60px;
60
  }
61
 
62
- .toplevel_page_jetpack.jetpack-disconnected.mp6.folded #wpwrap,
63
- body[class*=" jetpack_page_jetpack_"].jetpack-disconnected.mp6.folded #wpwrap {
64
- background-position: -257px -60px;
65
  }
66
 
67
  .toplevel_page_jetpack.jetpack-connected #wpwrap,
68
- body[class*=" jetpack_page_jetpack_"].jetpack-connected #wpwrap {
69
- background: url(images/header-clouds-small.png) 45px 0 repeat-x;
70
  }
71
 
72
- .toplevel_page_jetpack.jetpack-connected.mp6 #wpwrap,
73
- body[class*=" jetpack_page_jetpack_"].jetpack-connected.mp6 #wpwrap {
74
- background-position: 52px 0;
75
  }
76
 
77
  .toplevel_page_jetpack.jetpack-connected.folded #wpwrap,
78
- body[class*=" jetpack_page_jetpack_"].jetpack-connected.folded #wpwrap {
79
- background-position: -68px 0;
80
  }
81
 
82
- .toplevel_page_jetpack.jetpack-connected.mp6.folded #wpwrap,
83
- body[class*=" jetpack_page_jetpack_"].jetpack-connected.mp6.folded #wpwrap {
84
- background-position: -62px 0;
85
  }
86
 
87
  @media only screen and (max-width: 900px) {
88
 
89
  .toplevel_page_jetpack.jetpack-disconnected.auto-fold #wpwrap,
90
- body[class*=" jetpack_page_jetpack_"].jetpack-disconnected.auto-fold #wpwrap {
91
- background-position: -263px -60px;
92
  }
93
 
94
- .toplevel_page_jetpack.jetpack-disconnected.mp6.auto-fold #wpwrap,
95
- body[class*=" jetpack_page_jetpack_"].jetpack-disconnected.mp6.auto-fold #wpwrap {
96
- background-position: -257px -60px;
97
  }
98
 
99
  .toplevel_page_jetpack.jetpack-connected.auto-fold #wpwrap,
100
- body[class*=" jetpack_page_jetpack_"].jetpack-connected.auto-fold #wpwrap {
101
  background-position: -68px 0;
102
  }
103
 
104
- .toplevel_page_jetpack.jetpack-connected.mp6.auto-fold #wpwrap,
105
- body[class*=" jetpack_page_jetpack_"].jetpack-connected.mp6.auto-fold #wpwrap {
106
  background-position: -62px 0;
107
  }
108
 
@@ -186,13 +186,13 @@ body[class*=" jetpack_page_jetpack_"].jetpack-connected.mp6.folded #wpwrap {
186
  only screen and (min-device-pixel-ratio: 1.5) {
187
 
188
  .toplevel_page_jetpack.jetpack-disconnected #wpwrap,
189
- body[class*=" jetpack_page_jetpack_"].jetpack-disconnected #wpwrap {
190
  background-image: url(images/header-clouds-2x.png);
191
  background-size: 1600px 400px;
192
  }
193
 
194
  .toplevel_page_jetpack.jetpack-connected #wpwrap,
195
- body[class*=" jetpack_page_jetpack_"].jetpack-connected #wpwrap {
196
  background-image: url(images/header-clouds-small-2x.png);
197
  background-size: 980px 140px;
198
  }
@@ -666,8 +666,8 @@ p.jp-help {
666
  border-top-left-radius: 3px;
667
  border-bottom-left-radius: 3px;
668
  background-repeat: no-repeat;
669
- background-image: url(images/module-icons-sprite.png);
670
- background-size: 2956px 50px; /* remember to update this every time a new module is added! */
671
  }
672
 
673
  @media only screen and (-moz-min-device-pixel-ratio: 1.5),
@@ -676,7 +676,7 @@ p.jp-help {
676
  only screen and (min-device-pixel-ratio: 1.5) {
677
 
678
  .jetpack-module div.module-image {
679
- background-image: url(images/module-icons-sprite-2x.png);
680
  }
681
 
682
  }
@@ -781,14 +781,15 @@ p.jp-help {
781
  background-position: -2471px 5px;
782
  }
783
 
784
- #debug.jetpack-module div.module-image {
785
- background-position: -2550px 5px;
786
  }
787
 
788
  #omnisearch.jetpack-module div.module-image {
789
  background-position: -2625px 5px;
790
  }
791
 
 
792
  #wpcc.jetpack-module div.module-image {
793
  background-position: -2710px 5px;
794
  }
@@ -798,7 +799,16 @@ p.jp-help {
798
  }
799
 
800
  #videopress.jetpack-module div.module-image {
801
- background-position: -2874px 5px;
 
 
 
 
 
 
 
 
 
802
  }
803
 
804
  .jetpack-module div.module-image p {
30
  */
31
 
32
  /* Force the menu not to be sticky, so we can color the arrow. */
33
+ .toplevel_page_jetpack.sticky-menu #adminmenuwrap,
34
+ .jetpack-pagestyles.sticky-menu #adminmenuwrap {
35
  position: relative;
36
  z-index: auto;
37
  top: 0;
38
  }
39
 
40
+ .toplevel_page_jetpack ul#adminmenu a.wp-has-current-submenu:after,
41
+ .toplevel_page_jetpack ul#adminmenu > li.current > a.current:after,
42
+ .jetpack-pagestyles ul#adminmenu a.wp-has-current-submenu:after,
43
+ .jetpack-pagestyles ul#adminmenu > li.current > a.current:after {
44
  border-right-color:#8fad4b;
45
  }
46
 
47
  .toplevel_page_jetpack.jetpack-disconnected #wpwrap,
48
+ .jetpack-pagestyles.jetpack-disconnected #wpwrap {
49
+ background: url(images/header-clouds.png) -143px -60px repeat-x;
50
  }
51
 
52
+ .pre-mp6.toplevel_page_jetpack.jetpack-disconnected #wpwrap,
53
+ .pre-mp6.jetpack-pagestyles.jetpack-disconnected #wpwrap {
54
+ background-position: -150px -60px;
55
  }
56
 
57
  .toplevel_page_jetpack.jetpack-disconnected.folded #wpwrap,
58
+ .jetpack-pagestyles.jetpack-disconnected.folded #wpwrap {
59
+ background-position: -257px -60px;
60
  }
61
 
62
+ .pre-mp6.toplevel_page_jetpack.jetpack-disconnected.folded #wpwrap,
63
+ .pre-mp6.jetpack-pagestyles.jetpack-disconnected.folded #wpwrap {
64
+ background-position: -263px -60px;
65
  }
66
 
67
  .toplevel_page_jetpack.jetpack-connected #wpwrap,
68
+ .jetpack-pagestyles.jetpack-connected #wpwrap {
69
+ background: url(images/header-clouds-small.png) 52px 0 repeat-x;
70
  }
71
 
72
+ .pre-mp6.toplevel_page_jetpack.jetpack-connected #wpwrap,
73
+ .pre-mp6.jetpack-pagestyles.jetpack-connected #wpwrap {
74
+ background-position: 45px 0;
75
  }
76
 
77
  .toplevel_page_jetpack.jetpack-connected.folded #wpwrap,
78
+ .jetpack-pagestyles.jetpack-connected.folded #wpwrap {
79
+ background-position: -62px 0;
80
  }
81
 
82
+ .pre-mp6.toplevel_page_jetpack.jetpack-connected.folded #wpwrap,
83
+ .pre-mp6.jetpack-pagestyles.jetpack-connected.folded #wpwrap {
84
+ background-position: -68px 0;
85
  }
86
 
87
  @media only screen and (max-width: 900px) {
88
 
89
  .toplevel_page_jetpack.jetpack-disconnected.auto-fold #wpwrap,
90
+ .jetpack-pagestyles.jetpack-disconnected.auto-fold #wpwrap {
91
+ background-position: -257px -60px;
92
  }
93
 
94
+ .pre-mp6.toplevel_page_jetpack.jetpack-disconnected.auto-fold #wpwrap,
95
+ .pre-mp6.jetpack-pagestyles.jetpack-disconnected.auto-fold #wpwrap {
96
+ background-position: -263px -60px;
97
  }
98
 
99
  .toplevel_page_jetpack.jetpack-connected.auto-fold #wpwrap,
100
+ .jetpack-pagestyles.jetpack-connected.auto-fold #wpwrap {
101
  background-position: -68px 0;
102
  }
103
 
104
+ .pre-mp6.toplevel_page_jetpack.jetpack-connected.auto-fold #wpwrap,
105
+ .pre-mp6.jetpack-pagestyles.jetpack-connected.auto-fold #wpwrap {
106
  background-position: -62px 0;
107
  }
108
 
186
  only screen and (min-device-pixel-ratio: 1.5) {
187
 
188
  .toplevel_page_jetpack.jetpack-disconnected #wpwrap,
189
+ .jetpack-pagestyles.jetpack-disconnected #wpwrap {
190
  background-image: url(images/header-clouds-2x.png);
191
  background-size: 1600px 400px;
192
  }
193
 
194
  .toplevel_page_jetpack.jetpack-connected #wpwrap,
195
+ .jetpack-pagestyles.jetpack-connected #wpwrap {
196
  background-image: url(images/header-clouds-small-2x.png);
197
  background-size: 980px 140px;
198
  }
666
  border-top-left-radius: 3px;
667
  border-bottom-left-radius: 3px;
668
  background-repeat: no-repeat;
669
+ background-image: url(images/module-icons-sprite.png?v2.6);
670
+ background-size: 3155px 50px; /* remember to update this every time a new module is added! */
671
  }
672
 
673
  @media only screen and (-moz-min-device-pixel-ratio: 1.5),
676
  only screen and (min-device-pixel-ratio: 1.5) {
677
 
678
  .jetpack-module div.module-image {
679
+ background-image: url(images/module-icons-sprite-2x.png?v2.6);
680
  }
681
 
682
  }
781
  background-position: -2471px 5px;
782
  }
783
 
784
+ #monitor.jetpack-module div.module-image {
785
+ background-position: -2545px 5px;
786
  }
787
 
788
  #omnisearch.jetpack-module div.module-image {
789
  background-position: -2625px 5px;
790
  }
791
 
792
+ /* Deprecated */
793
  #wpcc.jetpack-module div.module-image {
794
  background-position: -2710px 5px;
795
  }
799
  }
800
 
801
  #videopress.jetpack-module div.module-image {
802
+ background-position: -2889px 5px;
803
+ }
804
+
805
+ #gplus-authorship.jetpack-module div.module-image {
806
+ background-position: -2980px 5px;
807
+ }
808
+
809
+
810
+ #sso.jetpack-module div.module-image {
811
+ background-position: -3070px 5px;
812
  }
813
 
814
  .jetpack-module div.module-image p {
class.jetpack-cli.php ADDED
@@ -0,0 +1,177 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ WP_CLI::add_command( 'jetpack', 'Jetpack_CLI' );
4
+
5
+ /**
6
+ * Control your local Jetpack installation.
7
+ */
8
+ class Jetpack_CLI extends WP_CLI_Command {
9
+
10
+ /**
11
+ * Get Jetpack Details
12
+ *
13
+ * ## OPTIONS
14
+ *
15
+ * None. Simply returns details about whether or not your blog
16
+ * is connected, its Jetpack version, and WordPress.com blog_id.
17
+ *
18
+ * ## EXAMPLES
19
+ *
20
+ * wp jetpack status
21
+ *
22
+ */
23
+ public function status( $args, $assoc_args ) {
24
+ if ( Jetpack::is_active() ) {
25
+ WP_CLI::success( __( 'Jetpack is currently connected to WordPress.com', 'jetpack' ) );
26
+ WP_CLI::line( sprintf( __( 'The Jetpack Version is %s', 'jetpack' ), JETPACK__VERSION ) );
27
+ WP_CLI::line( sprintf( __( 'The WordPress.com blog_id is %d', 'jetpack' ), Jetpack_Options::get_option( 'id' ) ) );
28
+ } else {
29
+ WP_CLI::line( __( 'Jetpack is not currently connected to WordPress.com', 'jetpack' ) );
30
+ }
31
+ }
32
+
33
+ /**
34
+ * Disconnect Jetpack Blogs or Users
35
+ *
36
+ * ## OPTIONS
37
+ *
38
+ * blog: Disconnect the entire blog.
39
+ *
40
+ * user <user_identifier>: Disconnect a specific user from WordPress.com.
41
+ *
42
+ * Please note, the primary account that the blog is connected
43
+ * to WordPress.com with cannot be disconnected without
44
+ * disconnecting the entire blog.
45
+ *
46
+ * ## EXAMPLES
47
+ *
48
+ * wp jetpack disconnect blog
49
+ * wp jetpack disconnect user 13
50
+ * wp jetpack disconnect user username
51
+ * wp jetpack disconnect user email@domain.com
52
+ *
53
+ * @synopsis blog|[user <user_id>]
54
+ */
55
+ public function disconnect( $args, $assoc_args ) {
56
+ if ( ! Jetpack::is_active() ) {
57
+ WP_CLI::error( __( 'You cannot disconnect, without having first connected.', 'jetpack' ) );
58
+ }
59
+
60
+ $action = isset( $args[0] ) ? $args[0] : 'prompt';
61
+ if ( ! in_array( $action, array( 'blog', 'user', 'prompt' ) ) ) {
62
+ WP_CLI::error( sprintf( __( '%s is not a valid command.', 'jetpack' ), $action ) );
63
+ }
64
+
65
+ if ( in_array( $action, array( 'user' ) ) ) {
66
+ if ( isset( $args[1] ) ) {
67
+ $user_id = $args[1];
68
+ if ( ctype_digit( $user_id ) ) {
69
+ $field = 'id';
70
+ $user_id = (int) $user_id;
71
+ } elseif ( is_email( $user_id ) ) {
72
+ $field = 'email';
73
+ $user_id = sanitize_user( $user_id, true );
74
+ } else {
75
+ $field = 'login';
76
+ $user_id = sanitize_user( $user_id, true );
77
+ }
78
+ if ( ! $user = get_user_by( $field, $user_id ) ) {
79
+ WP_CLI::error( __( 'Please specify a valid user.', 'jetpack' ) );
80
+ }
81
+ } else {
82
+ WP_CLI::error( __( 'Please specify a user.', 'jetpack' ) );
83
+ }
84
+ }
85
+
86
+ switch ( $action ) {
87
+ case 'blog':
88
+ Jetpack::log( 'disconnect' );
89
+ Jetpack::disconnect();
90
+ WP_CLI::success( __( 'Jetpack has been successfully disconnected.', 'jetpack' ) );
91
+ break;
92
+ case 'user':
93
+ if ( Jetpack::unlink_user( $user->ID ) ) {
94
+ Jetpack::log( 'unlink', $user->ID );
95
+ WP_CLI::success( sprintf( __( '%s has been successfully disconnected.', 'jetpack' ), $action ) );
96
+ } else {
97
+ WP_CLI::error( sprintf( __( '%s could not be disconnected. Are you sure they\'re connected currently?', 'jetpack' ), "{$user->login} <{$user->email}>" ) );
98
+ }
99
+ break;
100
+ case 'prompt':
101
+ WP_CLI::error( __( 'Please specify if you would like to disconnect a blog or user.', 'jetpack' ) );
102
+ break;
103
+ }
104
+ }
105
+
106
+ /**
107
+ * Manage Jetpack Modules
108
+ *
109
+ * ## OPTIONS
110
+ *
111
+ * list: View all available modules, and their status.
112
+ *
113
+ * activate <module_slug>: Activate a module.
114
+ *
115
+ * deactivate <module_slug>: Deactivate a module.
116
+ *
117
+ * toggle <module_slug>: Toggle a module on or off.
118
+ *
119
+ * ## EXAMPLES
120
+ *
121
+ * wp jetpack module list
122
+ * wp jetpack module activate stats
123
+ * wp jetpack module deactivate stats
124
+ * wp jetpack module toggle stats
125
+ *
126
+ * @synopsis [list|activate|deactivate|toggle [<module_name>]]
127
+ */
128
+ public function module( $args, $assoc_args ) {
129
+ $action = isset( $args[0] ) ? $args[0] : 'list';
130
+ if ( ! in_array( $action, array( 'list', 'activate', 'deactivate', 'toggle' ) ) ) {
131
+ WP_CLI::error( sprintf( __( '%s is not a valid command.', 'jetpack' ), $action ) );
132
+ }
133
+
134
+ if ( in_array( $action, array( 'activate', 'deactivate', 'toggle' ) ) ) {
135
+ if ( isset( $args[1] ) ) {
136
+ $module_slug = $args[1];
137
+ if ( ! Jetpack::is_module( $module_slug ) ) {
138
+ WP_CLI::error( sprintf( __( '%s is not a valid module.', 'jetpack' ), $module_slug ) );
139
+ }
140
+ if ( 'toggle' == $action ) {
141
+ $action = Jetpack::is_module_active( $module_slug ) ? 'deactivate' : 'activate';
142
+ }
143
+ } else {
144
+ WP_CLI::line( __( 'Please specify a valid module.', 'jetpack' ) );
145
+ $action = 'list';
146
+ }
147
+ }
148
+
149
+ switch ( $action ) {
150
+ case 'list':
151
+ WP_CLI::line( __( 'Available Modules:', 'jetpack' ) );
152
+ $modules = Jetpack::get_available_modules();
153
+ sort( $modules );
154
+ foreach( $modules as $module_slug ) {
155
+ $active = Jetpack::is_module_active( $module_slug ) ? __( 'Active', 'jetpack' ) : __( 'Inactive', 'jetpack' );
156
+ WP_CLI::line( "\t" . str_pad( $module_slug, 24 ) . $active );
157
+ }
158
+ break;
159
+ case 'activate':
160
+ $module = Jetpack::get_module( $module_slug );
161
+ Jetpack::log( 'activate', $module_slug );
162
+ Jetpack::activate_module( $module_slug, false );
163
+ WP_CLI::success( sprintf( __( '%s has been activated.', 'jetpack' ), $module['name'] ) );
164
+ break;
165
+ case 'deactivate':
166
+ $module = Jetpack::get_module( $module_slug );
167
+ Jetpack::log( 'deactivate', $module_slug );
168
+ Jetpack::deactivate_module( $module_slug );
169
+ WP_CLI::success( sprintf( __( '%s has been deactivated.', 'jetpack' ), $module['name'] ) );
170
+ break;
171
+ case 'toggle':
172
+ // Will never happen, should have been handled above and changed to activate or deactivate.
173
+ break;
174
+ }
175
+ }
176
+
177
+ }
class.jetpack-debugger.php CHANGED
@@ -138,7 +138,7 @@ class Jetpack_Debugger {
138
  <h3><?php esc_html_e( 'Trouble with Jetpack?', 'jetpack' ); ?></h3>
139
  <h4><?php esc_html_e( 'It may be caused by one of these issues, which you can diagnose yourself:', 'jetpack' ); ?></h4>
140
  <ol>
141
- <li><b><em><?php esc_html_e( 'A known issue.', 'jetpack' ); ?></em></b> <?php echo sprintf( __( 'Some themes and plugins have <a href="%1$s" target="_blank">known conflicts</a> with Jetpack – check the <a href="%2$s" target="_blank">list</a>. (You can also browse the <a href="%3$s">Jetpack support pages</a> or <a href="%4$s">Jetpack support forum</a> to see if others have experienced and solved the problem.)', 'jetpack' ), 'http://jetpack.me/known-issues/', 'http://jetpack.me/known-issues/', 'http://jetpack.me/support/', 'http://wordpress.org/support/plugin/jetpack' ); ?></li>
142
  <li><b><em><?php esc_html_e( 'An incompatible plugin.', 'jetpack' ); ?></em></b> <?php esc_html_e( "Find out by disabling all plugins except Jetpack. If the problem persists, it's not a plugin issue. If the problem is solved, turn your plugins on one by one until the problem pops up again – there's the culprit! Let us know, and we'll try to help.", 'jetpack' ); ?></li>
143
  <li><b><em><?php esc_html_e( 'A theme conflict.', 'jetpack' ); ?></em></b> <?php esc_html_e( "If your problem isn't known or caused by a plugin, try activating Twenty Twelve (the default WordPress theme). If this solves the problem, something in your theme is probably broken – let the theme's author know.", 'jetpack' ); ?></li>
144
  <li><b><em><?php esc_html_e( 'A problem with your XMLRPC file.', 'jetpack' ); ?></em></b> <?php echo sprintf( __( 'Load your <a href="%s">XMLRPC file</a>. It should say “XML-RPC server accepts POST requests only.” on a line by itself.', 'jetpack' ), site_url( 'xmlrpc.php' ) ); ?>
@@ -148,8 +148,10 @@ class Jetpack_Debugger {
148
  </ul>
149
  </li>
150
  </ol>
 
151
  <p class="jetpack-show-contact-form"><?php _e( 'If none of these help you find a solution, <a href="#">click here to contact Jetpack support</a>. Tell us as much as you can about the issue and what steps you\'ve tried to resolve it, and one of our Happiness Engineers will be in touch to help.', 'jetpack' ); ?>
152
  </p>
 
153
  </div>
154
  <div id="contact-message" style="display:none">
155
  <?php if ( self::is_jetpack_support_open() ): ?>
@@ -363,4 +365,4 @@ class Jetpack_Debugger {
363
  </script>
364
  <?php
365
  }
366
- }
138
  <h3><?php esc_html_e( 'Trouble with Jetpack?', 'jetpack' ); ?></h3>
139
  <h4><?php esc_html_e( 'It may be caused by one of these issues, which you can diagnose yourself:', 'jetpack' ); ?></h4>
140
  <ol>
141
+ <li><b><em><?php esc_html_e( 'A known issue.', 'jetpack' ); ?></em></b> <?php echo sprintf( __( 'Some themes and plugins have <a href="%1$s" target="_blank">known conflicts</a> with Jetpack – check the <a href="%2$s" target="_blank">list</a>. (You can also browse the <a href="%3$s">Jetpack support pages</a> or <a href="%4$s">Jetpack support forum</a> to see if others have experienced and solved the problem.)', 'jetpack' ), 'http://jetpack.me/support/getting-started-with-jetpack/known-issues/', 'http://jetpack.me/support/getting-started-with-jetpack/known-issues/', 'http://jetpack.me/support/', 'http://wordpress.org/support/plugin/jetpack' ); ?></li>
142
  <li><b><em><?php esc_html_e( 'An incompatible plugin.', 'jetpack' ); ?></em></b> <?php esc_html_e( "Find out by disabling all plugins except Jetpack. If the problem persists, it's not a plugin issue. If the problem is solved, turn your plugins on one by one until the problem pops up again – there's the culprit! Let us know, and we'll try to help.", 'jetpack' ); ?></li>
143
  <li><b><em><?php esc_html_e( 'A theme conflict.', 'jetpack' ); ?></em></b> <?php esc_html_e( "If your problem isn't known or caused by a plugin, try activating Twenty Twelve (the default WordPress theme). If this solves the problem, something in your theme is probably broken – let the theme's author know.", 'jetpack' ); ?></li>
144
  <li><b><em><?php esc_html_e( 'A problem with your XMLRPC file.', 'jetpack' ); ?></em></b> <?php echo sprintf( __( 'Load your <a href="%s">XMLRPC file</a>. It should say “XML-RPC server accepts POST requests only.” on a line by itself.', 'jetpack' ), site_url( 'xmlrpc.php' ) ); ?>
148
  </ul>
149
  </li>
150
  </ol>
151
+ <?php if ( self::is_jetpack_support_open() ): ?>
152
  <p class="jetpack-show-contact-form"><?php _e( 'If none of these help you find a solution, <a href="#">click here to contact Jetpack support</a>. Tell us as much as you can about the issue and what steps you\'ve tried to resolve it, and one of our Happiness Engineers will be in touch to help.', 'jetpack' ); ?>
153
  </p>
154
+ <?php endif; ?>
155
  </div>
156
  <div id="contact-message" style="display:none">
157
  <?php if ( self::is_jetpack_support_open() ): ?>
365
  </script>
366
  <?php
367
  }
368
+ }
class.jetpack-heartbeat.php CHANGED
@@ -4,9 +4,9 @@ class Jetpack_Heartbeat {
4
 
5
  /**
6
  * Holds the singleton instance of this class
7
- *
8
  * @since 2.3.3
9
- * @var Jetpack_Heartbeat
10
  */
11
  static $instance = false;
12
 
@@ -14,7 +14,7 @@ class Jetpack_Heartbeat {
14
 
15
  /**
16
  * Singleton
17
- *
18
  * @since 2.3.3
19
  * @static
20
  * @return Jetpack_Heartbeat
@@ -29,44 +29,58 @@ class Jetpack_Heartbeat {
29
 
30
  /**
31
  * Constructor for singleton
32
- *
33
  * @since 2.3.3
34
- * @return Jetpack_Heartbeat
35
  */
36
  private function __construct() {
 
 
 
37
  // Add weekly interval for wp-cron
38
- add_filter('cron_schedules', array( $this, 'add_cron_intervals' ) );
39
 
40
  // Schedule the task
41
  add_action( $this->cron_name, array( $this, 'cron_exec' ) );
42
 
43
- if (!wp_next_scheduled( $this->cron_name ) ) {
44
  wp_schedule_event( time(), 'jetpack_weekly', $this->cron_name );
45
  }
46
  }
47
 
48
  /**
49
  * Method that gets executed on the wp-cron call
50
- *
51
  * @since 2.3.3
52
- * @global string $wp_version
53
  */
54
  public function cron_exec() {
55
 
 
 
 
 
 
 
 
 
 
 
 
56
  /*
57
  * Check for an identity crisis
58
- *
59
  * If one exists:
60
  * - Bump stat for ID crisis
61
  * - Email site admin about potential ID crisis
62
- */
63
 
64
 
65
 
66
  /**
67
  * Setup an array of items that will eventually be stringified
68
- * and sent off to the Jetpack API
69
- *
70
  * Associative array with format group => values
71
  * - values should be an array that will be imploded to a string
72
  */
@@ -97,14 +111,16 @@ class Jetpack_Heartbeat {
97
  $jetpack->stat( 'plugins', $plugin );
98
  }
99
 
 
 
100
  $jetpack->do_stats( 'server_side' );
101
  }
102
 
103
  /**
104
  * Adds additional Jetpack specific intervals to wp-cron
105
- *
106
  * @since 2.3.3
107
- * @return array
108
  */
109
  public function add_cron_intervals( $schedules ) {
110
  $schedules['jetpack_weekly'] = array(
4
 
5
  /**
6
  * Holds the singleton instance of this class
7
+ *
8
  * @since 2.3.3
9
+ * @var Jetpack_Heartbeat
10
  */
11
  static $instance = false;
12
 
14
 
15
  /**
16
  * Singleton
17
+ *
18
  * @since 2.3.3
19
  * @static
20
  * @return Jetpack_Heartbeat
29
 
30
  /**
31
  * Constructor for singleton
32
+ *
33
  * @since 2.3.3
34
+ * @return Jetpack_Heartbeat
35
  */
36
  private function __construct() {
37
+ if ( ! Jetpack::is_active() )
38
+ return;
39
+
40
  // Add weekly interval for wp-cron
41
+ add_filter( 'cron_schedules', array( $this, 'add_cron_intervals' ) );
42
 
43
  // Schedule the task
44
  add_action( $this->cron_name, array( $this, 'cron_exec' ) );
45
 
46
+ if ( ! wp_next_scheduled( $this->cron_name ) ) {
47
  wp_schedule_event( time(), 'jetpack_weekly', $this->cron_name );
48
  }
49
  }
50
 
51
  /**
52
  * Method that gets executed on the wp-cron call
53
+ *
54
  * @since 2.3.3
55
+ * @global string $wp_version
56
  */
57
  public function cron_exec() {
58
 
59
+ /*
60
+ * This should run weekly. Figuring in for variances in
61
+ * WP_CRON, don't let it run more than every six days at most.
62
+ *
63
+ * i.e. if it ran less than six days ago, fail out.
64
+ */
65
+ $last = (int) Jetpack_Options::get_option( 'last_heartbeat' );
66
+ if ( $last && ( $last + WEEK_IN_SECONDS - DAY_IN_SECONDS > time() ) ) {
67
+ return;
68
+ }
69
+
70
  /*
71
  * Check for an identity crisis
72
+ *
73
  * If one exists:
74
  * - Bump stat for ID crisis
75
  * - Email site admin about potential ID crisis
76
+ */
77
 
78
 
79
 
80
  /**
81
  * Setup an array of items that will eventually be stringified
82
+ * and sent off to the Jetpack API
83
+ *
84
  * Associative array with format group => values
85
  * - values should be an array that will be imploded to a string
86
  */
111
  $jetpack->stat( 'plugins', $plugin );
112
  }
113
 
114
+ Jetpack_Options::update_option( 'last_heartbeat', time() );
115
+
116
  $jetpack->do_stats( 'server_side' );
117
  }
118
 
119
  /**
120
  * Adds additional Jetpack specific intervals to wp-cron
121
+ *
122
  * @since 2.3.3
123
+ * @return array
124
  */
125
  public function add_cron_intervals( $schedules ) {
126
  $schedules['jetpack_weekly'] = array(
class.jetpack-options.php CHANGED
@@ -35,6 +35,7 @@ class Jetpack_Options {
35
  'social_links', // (array) The specified links for each social networking site.
36
  'identity_crisis_whitelist', // (array) An array of options, each having an array of the values whitelisted for it.
37
  'gplus_authors', // (array) The Google+ authorship information for connected users.
 
38
  );
39
  }
40
 
35
  'social_links', // (array) The specified links for each social networking site.
36
  'identity_crisis_whitelist', // (array) An array of options, each having an array of the values whitelisted for it.
37
  'gplus_authors', // (array) The Google+ authorship information for connected users.
38
+ 'last_heartbeat', // (int) The timestamp of the last heartbeat that fired.
39
  );
40
  }
41
 
class.jetpack-user-agent.php CHANGED
@@ -1357,7 +1357,7 @@ class Jetpack_User_Agent_Info {
1357
  'alexa', 'altavista', 'ask jeeves', 'attentio', 'baiduspider', 'bingbot', 'chtml generic', 'crawler', 'fastmobilecrawl',
1358
  'feedfetcher-google', 'firefly', 'froogle', 'gigabot', 'googlebot', 'googlebot-mobile', 'heritrix', 'ia_archiver', 'irlbot',
1359
  'infoseek', 'jumpbot', 'lycos', 'mediapartners', 'mediobot', 'motionbot', 'msnbot', 'mshots', 'openbot',
1360
- 'pss-webkit-request', // See http://systemsrequests.wordpress.com/2013/07/30/log-request-to-help-us-with-this-issue
1361
  'pythumbnail', 'scooter', 'slurp', 'snapbot', 'spider', 'taptubot', 'technoratisnoop',
1362
  'teoma', 'twiceler', 'yahooseeker', 'yahooysmcm', 'yammybot',
1363
  );
1357
  'alexa', 'altavista', 'ask jeeves', 'attentio', 'baiduspider', 'bingbot', 'chtml generic', 'crawler', 'fastmobilecrawl',
1358
  'feedfetcher-google', 'firefly', 'froogle', 'gigabot', 'googlebot', 'googlebot-mobile', 'heritrix', 'ia_archiver', 'irlbot',
1359
  'infoseek', 'jumpbot', 'lycos', 'mediapartners', 'mediobot', 'motionbot', 'msnbot', 'mshots', 'openbot',
1360
+ 'pss-webkit-request',
1361
  'pythumbnail', 'scooter', 'slurp', 'snapbot', 'spider', 'taptubot', 'technoratisnoop',
1362
  'teoma', 'twiceler', 'yahooseeker', 'yahooysmcm', 'yammybot',
1363
  );
class.jetpack.php CHANGED
@@ -49,6 +49,52 @@ class Jetpack {
49
  'subscriber' => 'read',
50
  );
51
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
52
  /**
53
  * Message to display in admin_notice
54
  * @var string
@@ -244,9 +290,13 @@ class Jetpack {
244
  * They check for external files or plugins, so they need to run as late as possible.
245
  */
246
  add_action( 'plugins_loaded', array( $this, 'check_open_graph' ), 999 );
 
247
  add_action( 'plugins_loaded', array( $this, 'check_rest_api_compat' ), 1000 );
248
 
249
  add_filter( 'map_meta_cap', array( $this, 'jetpack_custom_caps' ), 1, 4 );
 
 
 
250
  }
251
 
252
  /**
@@ -310,6 +360,9 @@ class Jetpack {
310
  */
311
  require_once( JETPACK__PLUGIN_DIR . '_inc/genericons.php' );
312
  jetpack_register_genericons();
 
 
 
313
  }
314
 
315
  /**
@@ -321,14 +374,14 @@ class Jetpack {
321
  }
322
 
323
  /*
324
- * Returns the location of Jetpack's lib directory. This filter is applied
325
- * in require_lib().
326
- *
327
- * @filter require_lib_dir
328
- */
329
- function require_lib_dir( $lib_dir ) {
330
- return JETPACK__PLUGIN_DIR . 'lib';
331
- }
332
 
333
  /**
334
  * Is Jetpack active?
@@ -522,35 +575,30 @@ class Jetpack {
522
  }
523
 
524
  $conflicting_plugins = array(
525
- 'facebook/facebook.php', // Official Facebook plugin
526
- 'wordpress-seo/wp-seo.php', // WordPress SEO by Yoast
527
- 'add-link-to-facebook/add-link-to-facebook.php', // Add Link to Facebook
528
- 'facebook-awd/AWD_facebook.php', // Facebook AWD All in one
529
- 'header-footer/plugin.php', // Header and Footer
530
- 'nextgen-facebook/nextgen-facebook.php', // NextGEN Facebook OG
531
- 'seo-facebook-comments/seofacebook.php', // SEO Facebook Comments
532
- 'seo-ultimate/seo-ultimate.php', // SEO Ultimate
533
- 'sexybookmarks/sexy-bookmarks.php', // Shareaholic
534
- 'shareaholic/sexy-bookmarks.php', // Shareaholic
535
- 'social-discussions/social-discussions.php', // Social Discussions
536
- 'social-networks-auto-poster-facebook-twitter-g/NextScripts_SNAP.php', // NextScripts SNAP
537
- 'wordbooker/wordbooker.php', // Wordbooker
538
- 'socialize/socialize.php', // Socialize
539
- 'simple-facebook-connect/sfc.php', // Simple Facebook Connect
540
- 'social-sharing-toolkit/social_sharing_toolkit.php', // Social Sharing Toolkit
541
- 'wp-facebook-open-graph-protocol/wp-facebook-ogp.php', // WP Facebook Open Graph protocol
542
- 'opengraph/opengraph.php', // Open Graph
543
- 'sharepress/sharepress.php', // SharePress
544
- 'wp-facebook-like-send-open-graph-meta/wp-facebook-like-send-open-graph-meta.php', // WP Facebook Like Send & Open Graph Meta
545
- 'network-publisher/networkpub.php', // Network Publisher
546
- 'wp-ogp/wp-ogp.php', // WP-OGP
547
- 'twitter-cards/twitter-cards.php', // Twitter Cards
548
- 'twitter-cards-meta/twitter-cards-meta.php', // Twitter Cards Meta
549
- 'ig-twitter-cards/ig-twitter-cards.php', // IG:Twitter Cards
550
- 'kevinjohn-gallagher-pure-web-brilliants-social-graph-twitter-cards-extention/kevinjohn_gallagher___social_graph_twitter_output.php', // Pure Web Brilliant's Social Graph Twitter Cards Extention
551
- 'jm-twitter-cards/jm-twitter-cards.php', // JM Twitter Cards
552
- 'wp-twitter-cards/twitter_cards.php', // WP Twitter Cards
553
- 'eewee-twitter-card/index.php', // eewee twitter card
554
  );
555
 
556
  foreach ( $conflicting_plugins as $plugin ) {
@@ -564,6 +612,48 @@ class Jetpack {
564
  require_once JETPACK__PLUGIN_DIR . 'functions.opengraph.php';
565
  }
566
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
567
  /* Jetpack Options API */
568
 
569
  public static function get_option_names( $type = 'compact' ) {
@@ -803,6 +893,90 @@ class Jetpack {
803
  return apply_filters( 'jetpack_get_default_modules', $return, $min_version, $max_version );
804
  }
805
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
806
  /**
807
  * Extract a module's slug from its full path.
808
  */
@@ -833,6 +1007,7 @@ class Jetpack {
833
  'free' => 'Free',
834
  'requires_connection' => 'Requires Connection',
835
  'auto_activate' => 'Auto Activate',
 
836
  );
837
 
838
  $file = Jetpack::get_module_path( Jetpack::get_module_slug( $module ) );
@@ -843,12 +1018,11 @@ class Jetpack {
843
  if ( empty( $mod['name'] ) )
844
  return false;
845
 
846
- $mod['name'] = translate( $mod['name'], 'jetpack' );
847
- $mod['description'] = translate( $mod['description'], 'jetpack' );
848
- if ( empty( $mod['sort'] ) )
849
- $mod['sort'] = 10;
850
- $mod['deactivate'] = empty( $mod['deactivate'] );
851
- $mod['free'] = empty( $mod['free'] );
852
  $mod['requires_connection'] = ( ! empty( $mod['requires_connection'] ) && 'No' == $mod['requires_connection'] ) ? false : true;
853
 
854
  if ( empty( $mod['auto_activate'] ) || ! in_array( strtolower( $mod['auto_activate'] ), array( 'yes', 'no', 'public' ) ) ) {
@@ -857,9 +1031,31 @@ class Jetpack {
857
  $mod['auto_activate'] = (string) $mod['auto_activate'];
858
  }
859
 
 
 
 
 
 
 
 
 
860
  return $mod;
861
  }
862
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
863
  /**
864
  * Get a list of activated modules as an array of module slugs.
865
  */
@@ -1014,6 +1210,8 @@ class Jetpack {
1014
  }
1015
 
1016
  public static function activate_module( $module, $exit = true ) {
 
 
1017
  $jetpack = Jetpack::init();
1018
 
1019
  if ( ! strlen( $module ) )
@@ -1081,12 +1279,10 @@ class Jetpack {
1081
  }
1082
 
1083
  public static function deactivate_module( $module ) {
 
 
1084
  $active = Jetpack::get_active_modules();
1085
- $new = array();
1086
- foreach ( $active as $check ) {
1087
- if ( ! empty( $check ) && $module != $check )
1088
- $new[] = $check;
1089
- }
1090
 
1091
  do_action( "jetpack_deactivate_module_$module" );
1092
  return Jetpack_Options::update_option( 'active_modules', array_unique( $new ) );
@@ -1239,23 +1435,23 @@ p {
1239
  /**
1240
  * Unlinks the current user from the linked WordPress.com user
1241
  */
1242
- function unlink_user() {
1243
  if ( ! $tokens = Jetpack_Options::get_option( 'user_tokens' ) )
1244
  return false;
1245
 
1246
- $user_id = get_current_user_id();
1247
 
1248
  if ( Jetpack_Options::get_option( 'master_user' ) == $user_id )
1249
  return false;
1250
 
1251
- if ( ! isset( $tokens[$user_id] ) )
1252
  return false;
1253
 
1254
  Jetpack::load_xml_rpc_client();
1255
  $xml = new Jetpack_IXR_Client( compact( 'user_id' ) );
1256
  $xml->query( 'jetpack.unlink_user', $user_id );
1257
 
1258
- unset( $tokens[$user_id] );
1259
 
1260
  Jetpack_Options::update_option( 'user_tokens', $tokens );
1261
 
@@ -1352,7 +1548,7 @@ p {
1352
  }
1353
 
1354
  add_action( 'load-plugins.php', array( $this, 'intercept_plugin_error_scrape_init' ) );
1355
- add_action( 'admin_head', array( $this, 'admin_menu_css' ) );
1356
  add_filter( 'plugin_action_links_' . plugin_basename( JETPACK__PLUGIN_DIR . 'jetpack.php' ), array( $this, 'plugin_action_links' ) );
1357
 
1358
  if ( Jetpack::is_active() || Jetpack::is_development_mode() ) {
@@ -1365,12 +1561,21 @@ p {
1365
  }
1366
 
1367
  function admin_body_class( $admin_body_class = '' ) {
1368
- if ( self::is_active() ) {
1369
- $admin_body_class .= ' jetpack-connected';
1370
- } else {
1371
- $admin_body_class .= ' jetpack-disconnected';
 
 
 
 
1372
  }
1373
- return $admin_body_class;
 
 
 
 
 
1374
  }
1375
 
1376
  function prepare_connect_notice() {
@@ -1473,7 +1678,7 @@ p {
1473
 
1474
  add_action( "admin_print_scripts-$hook", array( $this, 'admin_scripts' ) );
1475
 
1476
- do_action( 'jetpack_admin_menu' );
1477
  }
1478
  /*
1479
  function admin_menu_modules() {
@@ -1677,24 +1882,49 @@ p {
1677
  );
1678
  }
1679
 
1680
- function admin_menu_css() { ?>
1681
- <style type="text/css" id="jetpack-menu-css">
1682
- #toplevel_page_jetpack .wp-menu-image {
1683
- background: url( <?php echo plugins_url( '_inc/images/menuicon-sprite.png', __FILE__ ) ?> ) 0 90% no-repeat;
1684
- }
1685
- /* Retina Jetpack Menu Icon */
1686
- @media only screen and (-moz-min-device-pixel-ratio: 1.5), only screen and (-o-min-device-pixel-ratio: 3/2), only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {
 
 
 
1687
  #toplevel_page_jetpack .wp-menu-image {
1688
- background: url( <?php echo plugins_url( '_inc/images/menuicon-sprite-2x.png', __FILE__ ) ?> ) 0 90% no-repeat;
1689
- background-size:30px 64px;
1690
  }
1691
- }
1692
- #toplevel_page_jetpack.current .wp-menu-image,
1693
- #toplevel_page_jetpack.wp-has-current-submenu .wp-menu-image,
1694
- #toplevel_page_jetpack:hover .wp-menu-image {
1695
- background-position: top left;
1696
- }
1697
- </style><?php
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1698
  }
1699
 
1700
  function admin_menu_order() {
@@ -1870,6 +2100,9 @@ p {
1870
  function admin_page_load() {
1871
  $error = false;
1872
 
 
 
 
1873
  if ( ! empty( $_GET['jetpack_restate'] ) ) {
1874
  // Should only be used in intermediate redirects to preserve state across redirects
1875
  Jetpack::restate();
@@ -1922,7 +2155,7 @@ p {
1922
 
1923
  $module = stripslashes( $_GET['module'] );
1924
  check_admin_referer( "jetpack_activate-$module" );
1925
- Jetpack::log( 'activate' );
1926
  Jetpack::activate_module( $module );
1927
  // The following two lines will rarely happen, as Jetpack::activate_module normally exits at the end.
1928
  wp_safe_redirect( Jetpack::admin_url( 'page=jetpack' ) );
@@ -1967,8 +2200,8 @@ p {
1967
 
1968
  $modules = stripslashes( $_GET['module'] );
1969
  check_admin_referer( "jetpack_deactivate-$modules" );
1970
- Jetpack::log( 'deactivate' );
1971
  foreach ( explode( ',', $modules ) as $module ) {
 
1972
  Jetpack::deactivate_module( $module );
1973
  Jetpack::state( 'message', 'module_deactivated' );
1974
  }
@@ -1982,6 +2215,8 @@ p {
1982
  Jetpack::state( 'message', 'unlinked' );
1983
  wp_safe_redirect( Jetpack::admin_url() );
1984
  exit;
 
 
1985
  }
1986
  }
1987
 
@@ -2025,6 +2260,27 @@ p {
2025
  $this->error .= $php_errors;
2026
  }
2027
  break;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2028
  case 'not_public' :
2029
  $this->error = __( '<strong>Your Jetpack has a glitch.</strong> Connecting this site with WordPress.com is not possible. This usually means your site is not publicly accessible (localhost).', 'jetpack' );
2030
  break;
@@ -3773,7 +4029,7 @@ p {
3773
  $option_names = array_filter( (array) $option_names, 'is_string' );
3774
 
3775
  Jetpack::load_xml_rpc_client();
3776
- $xml = new Jetpack_IXR_Client( array( 'user_id' => get_current_user_id(), ) );
3777
  $xml->query( 'jetpack.fetchSiteOptions', $option_names );
3778
  if ( $xml->isError() ) {
3779
  return array_flip( $option_names );
@@ -3804,9 +4060,6 @@ p {
3804
  * @return array An array of options that do not match. If everything is good, it will evaluate to false.
3805
  */
3806
  public static function check_identity_crisis( $force_recheck = false ) {
3807
- if ( ! current_user_can( 'manage_options' ) )
3808
- return false;
3809
-
3810
  if ( ! Jetpack::is_active() || Jetpack::is_development_mode() )
3811
  return false;
3812
 
49
  'subscriber' => 'read',
50
  );
51
 
52
+ /**
53
+ * Map of modules that have conflicts with plugins and should not be auto-activated
54
+ * if the plugins are active. Used by filter_default_modules
55
+ *
56
+ * Plugin Authors: If you'd like to prevent a single module from auto-activating,
57
+ * change `module-slug` and add this to your plugin:
58
+ *
59
+ * add_filter( 'jetpack_get_default_modules', 'my_jetpack_get_default_modules' );
60
+ * function my_jetpack_get_default_modules( $modules ) {
61
+ * return array_diff( $modules, array( 'module-slug' ) );
62
+ * }
63
+ *
64
+ * @var array
65
+ */
66
+ private $conflicting_plugins = array(
67
+ 'comments' => array(
68
+ 'Intense Debate' => 'intensedebate/intensedebate.php',
69
+ 'Disqus' => 'disqus-comment-system/disqus.php',
70
+ ),
71
+ 'contact-form' => array(
72
+ 'Contact Form 7' => 'contact-form-7/wp-contact-form-7.php',
73
+ 'Gravity Forms' => 'gravityforms/gravityforms.php',
74
+ 'Contact Form Plugin' => 'contact-form-plugin/contact_form.php',
75
+ 'Easy Contact Forms' => 'easy-contact-forms/easy-contact-forms.php',
76
+ ),
77
+ 'gplus-authorship' => array(
78
+ 'WP SEO by Yoast' => 'wordpress-seo/wp-seo.php',
79
+ ),
80
+ 'minileven' => array(
81
+ 'WPtouch' => 'wptouch/wptouch.php',
82
+ ),
83
+ 'sharedaddy' => array(
84
+ 'AddThis' => 'addthis/addthis_social_widget.php',
85
+ 'Add To Any' => 'add-to-any/add-to-any.php',
86
+ 'ShareThis' => 'share-this/sharethis.php',
87
+ 'Shareaholic' => 'shareaholic/shareaholic.php',
88
+ ),
89
+ 'widget-visibility' => array(
90
+ 'Widget Logic' => 'widget-logic/widget_logic.php',
91
+ 'Dynamic Widgets' => 'dynamic-widgets/dynamic-widgets.php',
92
+ ),
93
+ 'random-redirect' => array(
94
+ 'Random Redirect 2' => 'random-redirect-2/random-redirect.php',
95
+ ),
96
+ );
97
+
98
  /**
99
  * Message to display in admin_notice
100
  * @var string
290
  * They check for external files or plugins, so they need to run as late as possible.
291
  */
292
  add_action( 'plugins_loaded', array( $this, 'check_open_graph' ), 999 );
293
+ add_action( 'plugins_loaded', array( $this, 'check_twitter_tags' ), 999 );
294
  add_action( 'plugins_loaded', array( $this, 'check_rest_api_compat' ), 1000 );
295
 
296
  add_filter( 'map_meta_cap', array( $this, 'jetpack_custom_caps' ), 1, 4 );
297
+
298
+ add_filter( 'jetpack_get_default_modules', array( $this, 'filter_default_modules' ) );
299
+ add_filter( 'jetpack_get_default_modules', array( $this, 'handle_deprecated_modules' ), 99 );
300
  }
301
 
302
  /**
360
  */
361
  require_once( JETPACK__PLUGIN_DIR . '_inc/genericons.php' );
362
  jetpack_register_genericons();
363
+
364
+ if ( ! wp_style_is( 'jetpack-icons', 'registered' ) )
365
+ wp_register_style( 'jetpack-icons', plugins_url( '_inc/jetpack-icons/jetpack-icons.css', __FILE__ ), false, JETPACK__VERSION );
366
  }
367
 
368
  /**
374
  }
375
 
376
  /*
377
+ * Returns the location of Jetpack's lib directory. This filter is applied
378
+ * in require_lib().
379
+ *
380
+ * @filter require_lib_dir
381
+ */
382
+ function require_lib_dir( $lib_dir ) {
383
+ return JETPACK__PLUGIN_DIR . 'lib';
384
+ }
385
 
386
  /**
387
  * Is Jetpack active?
575
  }
576
 
577
  $conflicting_plugins = array(
578
+ 'facebook/facebook.php', // Official Facebook plugin
579
+ 'wordpress-seo/wp-seo.php', // WordPress SEO by Yoast
580
+ 'add-link-to-facebook/add-link-to-facebook.php', // Add Link to Facebook
581
+ 'facebook-awd/AWD_facebook.php', // Facebook AWD All in one
582
+ 'header-footer/plugin.php', // Header and Footer
583
+ 'nextgen-facebook/nextgen-facebook.php', // NextGEN Facebook OG
584
+ 'seo-facebook-comments/seofacebook.php', // SEO Facebook Comments
585
+ 'seo-ultimate/seo-ultimate.php', // SEO Ultimate
586
+ 'sexybookmarks/sexy-bookmarks.php', // Shareaholic
587
+ 'shareaholic/sexy-bookmarks.php', // Shareaholic
588
+ 'social-discussions/social-discussions.php', // Social Discussions
589
+ 'social-networks-auto-poster-facebook-twitter-g/NextScripts_SNAP.php', // NextScripts SNAP
590
+ 'wordbooker/wordbooker.php', // Wordbooker
591
+ 'socialize/socialize.php', // Socialize
592
+ 'simple-facebook-connect/sfc.php', // Simple Facebook Connect
593
+ 'social-sharing-toolkit/social_sharing_toolkit.php', // Social Sharing Toolkit
594
+ 'wp-facebook-open-graph-protocol/wp-facebook-ogp.php', // WP Facebook Open Graph protocol
595
+ 'opengraph/opengraph.php', // Open Graph
596
+ 'sharepress/sharepress.php', // SharePress
597
+ 'wp-facebook-like-send-open-graph-meta/wp-facebook-like-send-open-graph-meta.php', // WP Facebook Like Send & Open Graph Meta
598
+ 'network-publisher/networkpub.php', // Network Publisher
599
+ 'wp-ogp/wp-ogp.php', // WP-OGP
600
+ 'open-graph-protocol-framework/open-graph-protocol-framework.php', // Open Graph Protocol Framework
601
+ 'all-in-one-seo-pack/all_in_one_seo_pack.php', // All in One SEO Pack
 
 
 
 
 
602
  );
603
 
604
  foreach ( $conflicting_plugins as $plugin ) {
612
  require_once JETPACK__PLUGIN_DIR . 'functions.opengraph.php';
613
  }
614
 
615
+ /**
616
+ * Check if Jetpack's Twitter tags should be used.
617
+ * If certain plugins are active, Jetpack's twitter tags are suppressed.
618
+ *
619
+ * @uses Jetpack::get_active_modules, add_filter, get_option, apply_filters
620
+ * @action plugins_loaded
621
+ * @return null
622
+ */
623
+ public function check_twitter_tags() {
624
+
625
+ $active_plugins = get_option( 'active_plugins', array() );
626
+
627
+ if ( is_multisite() ) {
628
+ // Due to legacy code, active_sitewide_plugins stores them in the keys,
629
+ // whereas active_plugins stores them in the values.
630
+ $network_plugins = array_keys( get_site_option( 'active_sitewide_plugins', array() ) );
631
+ if ( $network_plugins ) {
632
+ $active_plugins = array_merge( $active_plugins, $network_plugins );
633
+ }
634
+ }
635
+
636
+ $conflicting_plugins = array(
637
+ 'twitter-cards/twitter-cards.php', // Twitter Cards
638
+ 'twitter-cards-meta/twitter-cards-meta.php', // Twitter Cards Meta
639
+ 'ig-twitter-cards/ig-twitter-cards.php', // IG:Twitter Cards
640
+ 'jm-twitter-cards/jm-twitter-cards.php', // JM Twitter Cards
641
+ 'wp-twitter-cards/twitter_cards.php', // WP Twitter Cards
642
+ 'eewee-twitter-card/index.php', // Eewee Twitter Card
643
+ 'kevinjohn-gallagher-pure-web-brilliants-social-graph-twitter-cards-extention/kevinjohn_gallagher___social_graph_twitter_output.php', // Pure Web Brilliant's Social Graph Twitter Cards Extention
644
+ );
645
+
646
+ foreach ( $conflicting_plugins as $plugin ) {
647
+ if ( in_array( $plugin, $active_plugins ) ) {
648
+ add_filter( 'jetpack_disable_twitter_cards', '__return_true', 99 );
649
+ break;
650
+ }
651
+ }
652
+
653
+ if ( apply_filters( 'jetpack_disable_twitter_cards', true ) )
654
+ require_once JETPACK__PLUGIN_DIR . 'functions.twitter-cards.php';
655
+ }
656
+
657
  /* Jetpack Options API */
658
 
659
  public static function get_option_names( $type = 'compact' ) {
893
  return apply_filters( 'jetpack_get_default_modules', $return, $min_version, $max_version );
894
  }
895
 
896
+ /**
897
+ * Checks activated modules during auto-activation to determine
898
+ * if any of those modules are being deprecated. If so, close
899
+ * them out, and add any replacement modules.
900
+ *
901
+ * Runs at priority 99 by default.
902
+ *
903
+ * This is run late, so that it can still activate a module if
904
+ * the new module is a replacement for another that the user
905
+ * currently has active, even if something at the normal priority
906
+ * would kibosh everything.
907
+ *
908
+ * @since 2.6
909
+ * @uses jetpack_get_default_modules filter
910
+ * @param array $modules
911
+ * @return array
912