stump-cli 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1310) hide show
  1. checksums.yaml +8 -8
  2. data/.gitignore +18 -0
  3. data/Gemfile +4 -0
  4. data/LICENSE.txt +22 -0
  5. data/README.md +3 -16
  6. data/Rakefile +2 -0
  7. data/bin/stump-cli +58 -0
  8. data/lib/stump-cli/version.rb +3 -0
  9. data/lib/stump.rb +5 -0
  10. data/lib/wp/Movefile-example +62 -0
  11. data/lib/wp/README.md +25 -0
  12. data/lib/wp/index.php +17 -0
  13. data/lib/wp/license.txt +385 -0
  14. data/lib/wp/readme.html +96 -0
  15. data/lib/wp/wp-activate.php +131 -0
  16. data/lib/wp/wp-admin/about.php +193 -0
  17. data/lib/wp/wp-admin/admin-ajax.php +98 -0
  18. data/lib/wp/wp-admin/admin-footer.php +99 -0
  19. data/lib/wp/wp-admin/admin-functions.php +15 -0
  20. data/lib/wp/wp-admin/admin-header.php +243 -0
  21. data/lib/wp/wp-admin/admin-post.php +71 -0
  22. data/lib/wp/wp-admin/admin.php +347 -0
  23. data/lib/wp/wp-admin/async-upload.php +114 -0
  24. data/lib/wp/wp-admin/comment.php +299 -0
  25. data/lib/wp/wp-admin/credits.php +192 -0
  26. data/lib/wp/wp-admin/css/about-rtl.css +446 -0
  27. data/lib/wp/wp-admin/css/about.css +446 -0
  28. data/lib/wp/wp-admin/css/admin-menu-rtl.css +917 -0
  29. data/lib/wp/wp-admin/css/admin-menu.css +917 -0
  30. data/lib/wp/wp-admin/css/color-picker-rtl.css +127 -0
  31. data/lib/wp/wp-admin/css/color-picker-rtl.min.css +1 -0
  32. data/lib/wp/wp-admin/css/color-picker.css +127 -0
  33. data/lib/wp/wp-admin/css/color-picker.min.css +1 -0
  34. data/lib/wp/wp-admin/css/colors/_admin.scss +525 -0
  35. data/lib/wp/wp-admin/css/colors/_mixins.scss +43 -0
  36. data/lib/wp/wp-admin/css/colors/_variables.scss +58 -0
  37. data/lib/wp/wp-admin/css/colors/blue/colors-rtl.css +341 -0
  38. data/lib/wp/wp-admin/css/colors/blue/colors-rtl.min.css +1 -0
  39. data/lib/wp/wp-admin/css/colors/blue/colors.css +341 -0
  40. data/lib/wp/wp-admin/css/colors/blue/colors.min.css +1 -0
  41. data/lib/wp/wp-admin/css/colors/blue/colors.scss +11 -0
  42. data/lib/wp/wp-admin/css/colors/coffee/colors-rtl.css +341 -0
  43. data/lib/wp/wp-admin/css/colors/coffee/colors-rtl.min.css +1 -0
  44. data/lib/wp/wp-admin/css/colors/coffee/colors.css +341 -0
  45. data/lib/wp/wp-admin/css/colors/coffee/colors.min.css +1 -0
  46. data/lib/wp/wp-admin/css/colors/coffee/colors.scss +7 -0
  47. data/lib/wp/wp-admin/css/colors/ectoplasm/colors-rtl.css +341 -0
  48. data/lib/wp/wp-admin/css/colors/ectoplasm/colors-rtl.min.css +1 -0
  49. data/lib/wp/wp-admin/css/colors/ectoplasm/colors.css +341 -0
  50. data/lib/wp/wp-admin/css/colors/ectoplasm/colors.min.css +1 -0
  51. data/lib/wp/wp-admin/css/colors/ectoplasm/colors.scss +8 -0
  52. data/lib/wp/wp-admin/css/colors/light/colors-rtl.css +349 -0
  53. data/lib/wp/wp-admin/css/colors/light/colors-rtl.min.css +1 -0
  54. data/lib/wp/wp-admin/css/colors/light/colors.css +349 -0
  55. data/lib/wp/wp-admin/css/colors/light/colors.min.css +1 -0
  56. data/lib/wp/wp-admin/css/colors/light/colors.scss +38 -0
  57. data/lib/wp/wp-admin/css/colors/midnight/colors-rtl.css +341 -0
  58. data/lib/wp/wp-admin/css/colors/midnight/colors-rtl.min.css +1 -0
  59. data/lib/wp/wp-admin/css/colors/midnight/colors.css +341 -0
  60. data/lib/wp/wp-admin/css/colors/midnight/colors.min.css +1 -0
  61. data/lib/wp/wp-admin/css/colors/midnight/colors.scss +5 -0
  62. data/lib/wp/wp-admin/css/colors/ocean/colors-rtl.css +341 -0
  63. data/lib/wp/wp-admin/css/colors/ocean/colors-rtl.min.css +1 -0
  64. data/lib/wp/wp-admin/css/colors/ocean/colors.css +341 -0
  65. data/lib/wp/wp-admin/css/colors/ocean/colors.min.css +1 -0
  66. data/lib/wp/wp-admin/css/colors/ocean/colors.scss +8 -0
  67. data/lib/wp/wp-admin/css/colors/sunrise/colors-rtl.css +341 -0
  68. data/lib/wp/wp-admin/css/colors/sunrise/colors-rtl.min.css +1 -0
  69. data/lib/wp/wp-admin/css/colors/sunrise/colors.css +341 -0
  70. data/lib/wp/wp-admin/css/colors/sunrise/colors.min.css +1 -0
  71. data/lib/wp/wp-admin/css/colors/sunrise/colors.scss +6 -0
  72. data/lib/wp/wp-admin/css/common-rtl.css +3212 -0
  73. data/lib/wp/wp-admin/css/common.css +3212 -0
  74. data/lib/wp/wp-admin/css/customize-controls-rtl.css +889 -0
  75. data/lib/wp/wp-admin/css/customize-controls-rtl.min.css +1 -0
  76. data/lib/wp/wp-admin/css/customize-controls.css +889 -0
  77. data/lib/wp/wp-admin/css/customize-controls.min.css +1 -0
  78. data/lib/wp/wp-admin/css/customize-widgets-rtl.css +603 -0
  79. data/lib/wp/wp-admin/css/customize-widgets-rtl.min.css +1 -0
  80. data/lib/wp/wp-admin/css/customize-widgets.css +603 -0
  81. data/lib/wp/wp-admin/css/customize-widgets.min.css +1 -0
  82. data/lib/wp/wp-admin/css/dashboard-rtl.css +1116 -0
  83. data/lib/wp/wp-admin/css/dashboard.css +1116 -0
  84. data/lib/wp/wp-admin/css/deprecated-media-rtl.css +371 -0
  85. data/lib/wp/wp-admin/css/deprecated-media-rtl.min.css +1 -0
  86. data/lib/wp/wp-admin/css/deprecated-media.css +371 -0
  87. data/lib/wp/wp-admin/css/deprecated-media.min.css +1 -0
  88. data/lib/wp/wp-admin/css/edit-rtl.css +1501 -0
  89. data/lib/wp/wp-admin/css/edit.css +1501 -0
  90. data/lib/wp/wp-admin/css/farbtastic-rtl.css +41 -0
  91. data/lib/wp/wp-admin/css/farbtastic.css +41 -0
  92. data/lib/wp/wp-admin/css/forms-rtl.css +992 -0
  93. data/lib/wp/wp-admin/css/forms.css +992 -0
  94. data/lib/wp/wp-admin/css/ie-rtl.css +785 -0
  95. data/lib/wp/wp-admin/css/ie-rtl.min.css +1 -0
  96. data/lib/wp/wp-admin/css/ie.css +785 -0
  97. data/lib/wp/wp-admin/css/ie.min.css +1 -0
  98. data/lib/wp/wp-admin/css/install-rtl.css +389 -0
  99. data/lib/wp/wp-admin/css/install-rtl.min.css +1 -0
  100. data/lib/wp/wp-admin/css/install.css +389 -0
  101. data/lib/wp/wp-admin/css/install.min.css +1 -0
  102. data/lib/wp/wp-admin/css/l10n-rtl.css +101 -0
  103. data/lib/wp/wp-admin/css/l10n.css +101 -0
  104. data/lib/wp/wp-admin/css/list-tables-rtl.css +1875 -0
  105. data/lib/wp/wp-admin/css/list-tables.css +1875 -0
  106. data/lib/wp/wp-admin/css/login-rtl.css +269 -0
  107. data/lib/wp/wp-admin/css/login-rtl.min.css +1 -0
  108. data/lib/wp/wp-admin/css/login.css +269 -0
  109. data/lib/wp/wp-admin/css/login.min.css +1 -0
  110. data/lib/wp/wp-admin/css/media-rtl.css +1196 -0
  111. data/lib/wp/wp-admin/css/media.css +1196 -0
  112. data/lib/wp/wp-admin/css/nav-menus-rtl.css +857 -0
  113. data/lib/wp/wp-admin/css/nav-menus.css +857 -0
  114. data/lib/wp/wp-admin/css/press-this-rtl.css +458 -0
  115. data/lib/wp/wp-admin/css/press-this.css +458 -0
  116. data/lib/wp/wp-admin/css/revisions-rtl.css +574 -0
  117. data/lib/wp/wp-admin/css/revisions.css +574 -0
  118. data/lib/wp/wp-admin/css/themes-rtl.css +1732 -0
  119. data/lib/wp/wp-admin/css/themes.css +1732 -0
  120. data/lib/wp/wp-admin/css/widgets-rtl.css +577 -0
  121. data/lib/wp/wp-admin/css/widgets.css +577 -0
  122. data/lib/wp/wp-admin/css/wp-admin-rtl.css +14 -0
  123. data/lib/wp/wp-admin/css/wp-admin-rtl.min.css +1 -0
  124. data/lib/wp/wp-admin/css/wp-admin.css +14 -0
  125. data/lib/wp/wp-admin/css/wp-admin.min.css +1 -0
  126. data/lib/wp/wp-admin/custom-background.php +482 -0
  127. data/lib/wp/wp-admin/custom-header.php +1366 -0
  128. data/lib/wp/wp-admin/customize.php +278 -0
  129. data/lib/wp/wp-admin/edit-comments.php +254 -0
  130. data/lib/wp/wp-admin/edit-form-advanced.php +636 -0
  131. data/lib/wp/wp-admin/edit-form-comment.php +160 -0
  132. data/lib/wp/wp-admin/edit-link-form.php +150 -0
  133. data/lib/wp/wp-admin/edit-tag-form.php +204 -0
  134. data/lib/wp/wp-admin/edit-tags.php +591 -0
  135. data/lib/wp/wp-admin/edit.php +330 -0
  136. data/lib/wp/wp-admin/export.php +243 -0
  137. data/lib/wp/wp-admin/freedoms.php +57 -0
  138. data/lib/wp/wp-admin/images/align-center-2x.png +0 -0
  139. data/lib/wp/wp-admin/images/align-center.png +0 -0
  140. data/lib/wp/wp-admin/images/align-left-2x.png +0 -0
  141. data/lib/wp/wp-admin/images/align-left.png +0 -0
  142. data/lib/wp/wp-admin/images/align-none-2x.png +0 -0
  143. data/lib/wp/wp-admin/images/align-none.png +0 -0
  144. data/lib/wp/wp-admin/images/align-right-2x.png +0 -0
  145. data/lib/wp/wp-admin/images/align-right.png +0 -0
  146. data/lib/wp/wp-admin/images/arrows-2x.png +0 -0
  147. data/lib/wp/wp-admin/images/arrows.png +0 -0
  148. data/lib/wp/wp-admin/images/bubble_bg-2x.gif +0 -0
  149. data/lib/wp/wp-admin/images/bubble_bg.gif +0 -0
  150. data/lib/wp/wp-admin/images/comment-grey-bubble-2x.png +0 -0
  151. data/lib/wp/wp-admin/images/comment-grey-bubble.png +0 -0
  152. data/lib/wp/wp-admin/images/date-button-2x.gif +0 -0
  153. data/lib/wp/wp-admin/images/date-button.gif +0 -0
  154. data/lib/wp/wp-admin/images/generic.png +0 -0
  155. data/lib/wp/wp-admin/images/icons32-2x.png +0 -0
  156. data/lib/wp/wp-admin/images/icons32-vs-2x.png +0 -0
  157. data/lib/wp/wp-admin/images/icons32-vs.png +0 -0
  158. data/lib/wp/wp-admin/images/icons32.png +0 -0
  159. data/lib/wp/wp-admin/images/imgedit-icons-2x.png +0 -0
  160. data/lib/wp/wp-admin/images/imgedit-icons.png +0 -0
  161. data/lib/wp/wp-admin/images/list-2x.png +0 -0
  162. data/lib/wp/wp-admin/images/list.png +0 -0
  163. data/lib/wp/wp-admin/images/loading.gif +0 -0
  164. data/lib/wp/wp-admin/images/marker.png +0 -0
  165. data/lib/wp/wp-admin/images/mask.png +0 -0
  166. data/lib/wp/wp-admin/images/media-button-2x.png +0 -0
  167. data/lib/wp/wp-admin/images/media-button-image.gif +0 -0
  168. data/lib/wp/wp-admin/images/media-button-music.gif +0 -0
  169. data/lib/wp/wp-admin/images/media-button-other.gif +0 -0
  170. data/lib/wp/wp-admin/images/media-button-video.gif +0 -0
  171. data/lib/wp/wp-admin/images/media-button.png +0 -0
  172. data/lib/wp/wp-admin/images/menu-2x.png +0 -0
  173. data/lib/wp/wp-admin/images/menu-vs-2x.png +0 -0
  174. data/lib/wp/wp-admin/images/menu-vs.png +0 -0
  175. data/lib/wp/wp-admin/images/menu.png +0 -0
  176. data/lib/wp/wp-admin/images/no.png +0 -0
  177. data/lib/wp/wp-admin/images/post-formats-vs.png +0 -0
  178. data/lib/wp/wp-admin/images/post-formats.png +0 -0
  179. data/lib/wp/wp-admin/images/post-formats32-vs.png +0 -0
  180. data/lib/wp/wp-admin/images/post-formats32.png +0 -0
  181. data/lib/wp/wp-admin/images/resize-2x.gif +0 -0
  182. data/lib/wp/wp-admin/images/resize-rtl-2x.gif +0 -0
  183. data/lib/wp/wp-admin/images/resize-rtl.gif +0 -0
  184. data/lib/wp/wp-admin/images/resize.gif +0 -0
  185. data/lib/wp/wp-admin/images/se.png +0 -0
  186. data/lib/wp/wp-admin/images/sort-2x.gif +0 -0
  187. data/lib/wp/wp-admin/images/sort.gif +0 -0
  188. data/lib/wp/wp-admin/images/spinner-2x.gif +0 -0
  189. data/lib/wp/wp-admin/images/spinner.gif +0 -0
  190. data/lib/wp/wp-admin/images/stars-2x.png +0 -0
  191. data/lib/wp/wp-admin/images/stars.png +0 -0
  192. data/lib/wp/wp-admin/images/w-logo-blue.png +0 -0
  193. data/lib/wp/wp-admin/images/w-logo-white.png +0 -0
  194. data/lib/wp/wp-admin/images/wheel.png +0 -0
  195. data/lib/wp/wp-admin/images/wordpress-logo-white.svg +1 -0
  196. data/lib/wp/wp-admin/images/wordpress-logo.png +0 -0
  197. data/lib/wp/wp-admin/images/wordpress-logo.svg +1 -0
  198. data/lib/wp/wp-admin/images/wpspin_light-2x.gif +0 -0
  199. data/lib/wp/wp-admin/images/wpspin_light.gif +0 -0
  200. data/lib/wp/wp-admin/images/xit-2x.gif +0 -0
  201. data/lib/wp/wp-admin/images/xit.gif +0 -0
  202. data/lib/wp/wp-admin/images/yes.png +0 -0
  203. data/lib/wp/wp-admin/import.php +132 -0
  204. data/lib/wp/wp-admin/includes/admin.php +74 -0
  205. data/lib/wp/wp-admin/includes/ajax-actions.php +2762 -0
  206. data/lib/wp/wp-admin/includes/bookmark.php +305 -0
  207. data/lib/wp/wp-admin/includes/class-ftp-pure.php +190 -0
  208. data/lib/wp/wp-admin/includes/class-ftp-sockets.php +250 -0
  209. data/lib/wp/wp-admin/includes/class-ftp.php +907 -0
  210. data/lib/wp/wp-admin/includes/class-pclzip.php +5687 -0
  211. data/lib/wp/wp-admin/includes/class-wp-comments-list-table.php +637 -0
  212. data/lib/wp/wp-admin/includes/class-wp-filesystem-base.php +815 -0
  213. data/lib/wp/wp-admin/includes/class-wp-filesystem-direct.php +384 -0
  214. data/lib/wp/wp-admin/includes/class-wp-filesystem-ftpext.php +415 -0
  215. data/lib/wp/wp-admin/includes/class-wp-filesystem-ftpsockets.php +352 -0
  216. data/lib/wp/wp-admin/includes/class-wp-filesystem-ssh2.php +392 -0
  217. data/lib/wp/wp-admin/includes/class-wp-importer.php +302 -0
  218. data/lib/wp/wp-admin/includes/class-wp-links-list-table.php +207 -0
  219. data/lib/wp/wp-admin/includes/class-wp-list-table.php +1080 -0
  220. data/lib/wp/wp-admin/includes/class-wp-media-list-table.php +574 -0
  221. data/lib/wp/wp-admin/includes/class-wp-ms-sites-list-table.php +402 -0
  222. data/lib/wp/wp-admin/includes/class-wp-ms-themes-list-table.php +459 -0
  223. data/lib/wp/wp-admin/includes/class-wp-ms-users-list-table.php +303 -0
  224. data/lib/wp/wp-admin/includes/class-wp-plugin-install-list-table.php +490 -0
  225. data/lib/wp/wp-admin/includes/class-wp-plugins-list-table.php +605 -0
  226. data/lib/wp/wp-admin/includes/class-wp-posts-list-table.php +1306 -0
  227. data/lib/wp/wp-admin/includes/class-wp-terms-list-table.php +466 -0
  228. data/lib/wp/wp-admin/includes/class-wp-theme-install-list-table.php +431 -0
  229. data/lib/wp/wp-admin/includes/class-wp-themes-list-table.php +279 -0
  230. data/lib/wp/wp-admin/includes/class-wp-upgrader-skins.php +767 -0
  231. data/lib/wp/wp-admin/includes/class-wp-upgrader.php +2676 -0
  232. data/lib/wp/wp-admin/includes/class-wp-users-list-table.php +459 -0
  233. data/lib/wp/wp-admin/includes/comment.php +171 -0
  234. data/lib/wp/wp-admin/includes/continents-cities.php +493 -0
  235. data/lib/wp/wp-admin/includes/dashboard.php +1333 -0
  236. data/lib/wp/wp-admin/includes/deprecated.php +1190 -0
  237. data/lib/wp/wp-admin/includes/export.php +508 -0
  238. data/lib/wp/wp-admin/includes/file.php +1152 -0
  239. data/lib/wp/wp-admin/includes/image-edit.php +828 -0
  240. data/lib/wp/wp-admin/includes/image.php +598 -0
  241. data/lib/wp/wp-admin/includes/import.php +206 -0
  242. data/lib/wp/wp-admin/includes/list-table.php +113 -0
  243. data/lib/wp/wp-admin/includes/media.php +3012 -0
  244. data/lib/wp/wp-admin/includes/menu.php +322 -0
  245. data/lib/wp/wp-admin/includes/meta-boxes.php +1119 -0
  246. data/lib/wp/wp-admin/includes/misc.php +845 -0
  247. data/lib/wp/wp-admin/includes/ms-deprecated.php +78 -0
  248. data/lib/wp/wp-admin/includes/ms.php +814 -0
  249. data/lib/wp/wp-admin/includes/nav-menu.php +1328 -0
  250. data/lib/wp/wp-admin/includes/plugin-install.php +550 -0
  251. data/lib/wp/wp-admin/includes/plugin.php +1899 -0
  252. data/lib/wp/wp-admin/includes/post.php +1661 -0
  253. data/lib/wp/wp-admin/includes/revision.php +228 -0
  254. data/lib/wp/wp-admin/includes/schema.php +1038 -0
  255. data/lib/wp/wp-admin/includes/screen.php +1179 -0
  256. data/lib/wp/wp-admin/includes/taxonomy.php +284 -0
  257. data/lib/wp/wp-admin/includes/template.php +2157 -0
  258. data/lib/wp/wp-admin/includes/theme-install.php +205 -0
  259. data/lib/wp/wp-admin/includes/theme.php +474 -0
  260. data/lib/wp/wp-admin/includes/translation-install.php +240 -0
  261. data/lib/wp/wp-admin/includes/update-core.php +1186 -0
  262. data/lib/wp/wp-admin/includes/update.php +432 -0
  263. data/lib/wp/wp-admin/includes/upgrade.php +2218 -0
  264. data/lib/wp/wp-admin/includes/user.php +442 -0
  265. data/lib/wp/wp-admin/includes/widgets.php +245 -0
  266. data/lib/wp/wp-admin/index.php +131 -0
  267. data/lib/wp/wp-admin/install-helper.php +199 -0
  268. data/lib/wp/wp-admin/install.php +305 -0
  269. data/lib/wp/wp-admin/js/accordion.js +143 -0
  270. data/lib/wp/wp-admin/js/accordion.min.js +1 -0
  271. data/lib/wp/wp-admin/js/color-picker.js +155 -0
  272. data/lib/wp/wp-admin/js/color-picker.min.js +1 -0
  273. data/lib/wp/wp-admin/js/comment.js +50 -0
  274. data/lib/wp/wp-admin/js/comment.min.js +1 -0
  275. data/lib/wp/wp-admin/js/common.js +804 -0
  276. data/lib/wp/wp-admin/js/common.min.js +1 -0
  277. data/lib/wp/wp-admin/js/custom-background.js +75 -0
  278. data/lib/wp/wp-admin/js/custom-background.min.js +1 -0
  279. data/lib/wp/wp-admin/js/custom-header.js +61 -0
  280. data/lib/wp/wp-admin/js/customize-controls.js +1305 -0
  281. data/lib/wp/wp-admin/js/customize-controls.min.js +1 -0
  282. data/lib/wp/wp-admin/js/customize-widgets.js +1882 -0
  283. data/lib/wp/wp-admin/js/customize-widgets.min.js +1 -0
  284. data/lib/wp/wp-admin/js/dashboard.js +190 -0
  285. data/lib/wp/wp-admin/js/dashboard.min.js +1 -0
  286. data/lib/wp/wp-admin/js/edit-comments.js +625 -0
  287. data/lib/wp/wp-admin/js/edit-comments.min.js +1 -0
  288. data/lib/wp/wp-admin/js/editor-expand.js +705 -0
  289. data/lib/wp/wp-admin/js/editor-expand.min.js +1 -0
  290. data/lib/wp/wp-admin/js/editor.js +324 -0
  291. data/lib/wp/wp-admin/js/editor.min.js +1 -0
  292. data/lib/wp/wp-admin/js/farbtastic.js +276 -0
  293. data/lib/wp/wp-admin/js/gallery.js +237 -0
  294. data/lib/wp/wp-admin/js/gallery.min.js +1 -0
  295. data/lib/wp/wp-admin/js/image-edit.js +633 -0
  296. data/lib/wp/wp-admin/js/image-edit.min.js +1 -0
  297. data/lib/wp/wp-admin/js/inline-edit-post.js +359 -0
  298. data/lib/wp/wp-admin/js/inline-edit-post.min.js +1 -0
  299. data/lib/wp/wp-admin/js/inline-edit-tax.js +142 -0
  300. data/lib/wp/wp-admin/js/inline-edit-tax.min.js +1 -0
  301. data/lib/wp/wp-admin/js/iris.min.js +4 -0
  302. data/lib/wp/wp-admin/js/language-chooser.js +26 -0
  303. data/lib/wp/wp-admin/js/language-chooser.min.js +1 -0
  304. data/lib/wp/wp-admin/js/link.js +69 -0
  305. data/lib/wp/wp-admin/js/link.min.js +1 -0
  306. data/lib/wp/wp-admin/js/media-gallery.js +26 -0
  307. data/lib/wp/wp-admin/js/media-gallery.min.js +1 -0
  308. data/lib/wp/wp-admin/js/media-upload.js +69 -0
  309. data/lib/wp/wp-admin/js/media-upload.min.js +1 -0
  310. data/lib/wp/wp-admin/js/media.js +111 -0
  311. data/lib/wp/wp-admin/js/media.min.js +1 -0
  312. data/lib/wp/wp-admin/js/nav-menu.js +1205 -0
  313. data/lib/wp/wp-admin/js/nav-menu.min.js +1 -0
  314. data/lib/wp/wp-admin/js/password-strength-meter.js +75 -0
  315. data/lib/wp/wp-admin/js/password-strength-meter.min.js +1 -0
  316. data/lib/wp/wp-admin/js/plugin-install.js +76 -0
  317. data/lib/wp/wp-admin/js/plugin-install.min.js +1 -0
  318. data/lib/wp/wp-admin/js/post.js +1094 -0
  319. data/lib/wp/wp-admin/js/post.min.js +1 -0
  320. data/lib/wp/wp-admin/js/postbox.js +199 -0
  321. data/lib/wp/wp-admin/js/postbox.min.js +1 -0
  322. data/lib/wp/wp-admin/js/revisions.js +1110 -0
  323. data/lib/wp/wp-admin/js/revisions.min.js +1 -0
  324. data/lib/wp/wp-admin/js/set-post-thumbnail.js +24 -0
  325. data/lib/wp/wp-admin/js/set-post-thumbnail.min.js +1 -0
  326. data/lib/wp/wp-admin/js/svg-painter.js +240 -0
  327. data/lib/wp/wp-admin/js/svg-painter.min.js +1 -0
  328. data/lib/wp/wp-admin/js/tags.js +72 -0
  329. data/lib/wp/wp-admin/js/tags.min.js +1 -0
  330. data/lib/wp/wp-admin/js/theme.js +1691 -0
  331. data/lib/wp/wp-admin/js/theme.min.js +1 -0
  332. data/lib/wp/wp-admin/js/updates.js +65 -0
  333. data/lib/wp/wp-admin/js/updates.min.js +1 -0
  334. data/lib/wp/wp-admin/js/user-profile.js +127 -0
  335. data/lib/wp/wp-admin/js/user-profile.min.js +1 -0
  336. data/lib/wp/wp-admin/js/user-suggest.js +30 -0
  337. data/lib/wp/wp-admin/js/user-suggest.min.js +1 -0
  338. data/lib/wp/wp-admin/js/widgets.js +494 -0
  339. data/lib/wp/wp-admin/js/widgets.min.js +1 -0
  340. data/lib/wp/wp-admin/js/word-count.js +44 -0
  341. data/lib/wp/wp-admin/js/word-count.min.js +1 -0
  342. data/lib/wp/wp-admin/js/wp-fullscreen.js +704 -0
  343. data/lib/wp/wp-admin/js/wp-fullscreen.min.js +1 -0
  344. data/lib/wp/wp-admin/js/xfn.js +17 -0
  345. data/lib/wp/wp-admin/js/xfn.min.js +1 -0
  346. data/lib/wp/wp-admin/link-add.php +29 -0
  347. data/lib/wp/wp-admin/link-manager.php +99 -0
  348. data/lib/wp/wp-admin/link-parse-opml.php +84 -0
  349. data/lib/wp/wp-admin/link.php +117 -0
  350. data/lib/wp/wp-admin/load-scripts.php +162 -0
  351. data/lib/wp/wp-admin/load-styles.php +153 -0
  352. data/lib/wp/wp-admin/maint/repair.php +124 -0
  353. data/lib/wp/wp-admin/media-new.php +84 -0
  354. data/lib/wp/wp-admin/media-upload.php +100 -0
  355. data/lib/wp/wp-admin/media.php +146 -0
  356. data/lib/wp/wp-admin/menu-header.php +227 -0
  357. data/lib/wp/wp-admin/menu.php +255 -0
  358. data/lib/wp/wp-admin/moderation.php +12 -0
  359. data/lib/wp/wp-admin/ms-admin.php +13 -0
  360. data/lib/wp/wp-admin/ms-delete-site.php +91 -0
  361. data/lib/wp/wp-admin/ms-edit.php +13 -0
  362. data/lib/wp/wp-admin/ms-options.php +12 -0
  363. data/lib/wp/wp-admin/ms-sites.php +13 -0
  364. data/lib/wp/wp-admin/ms-themes.php +13 -0
  365. data/lib/wp/wp-admin/ms-upgrade-network.php +13 -0
  366. data/lib/wp/wp-admin/ms-users.php +13 -0
  367. data/lib/wp/wp-admin/my-sites.php +145 -0
  368. data/lib/wp/wp-admin/nav-menus.php +798 -0
  369. data/lib/wp/wp-admin/network.php +561 -0
  370. data/lib/wp/wp-admin/network/about.php +16 -0
  371. data/lib/wp/wp-admin/network/admin.php +32 -0
  372. data/lib/wp/wp-admin/network/credits.php +16 -0
  373. data/lib/wp/wp-admin/network/edit.php +42 -0
  374. data/lib/wp/wp-admin/network/freedoms.php +16 -0
  375. data/lib/wp/wp-admin/network/index.php +79 -0
  376. data/lib/wp/wp-admin/network/menu.php +63 -0
  377. data/lib/wp/wp-admin/network/plugin-editor.php +16 -0
  378. data/lib/wp/wp-admin/network/plugin-install.php +19 -0
  379. data/lib/wp/wp-admin/network/plugins.php +16 -0
  380. data/lib/wp/wp-admin/network/profile.php +16 -0
  381. data/lib/wp/wp-admin/network/settings.php +347 -0
  382. data/lib/wp/wp-admin/network/setup.php +16 -0
  383. data/lib/wp/wp-admin/network/site-info.php +178 -0
  384. data/lib/wp/wp-admin/network/site-new.php +153 -0
  385. data/lib/wp/wp-admin/network/site-settings.php +173 -0
  386. data/lib/wp/wp-admin/network/site-themes.php +185 -0
  387. data/lib/wp/wp-admin/network/site-users.php +319 -0
  388. data/lib/wp/wp-admin/network/sites.php +275 -0
  389. data/lib/wp/wp-admin/network/theme-editor.php +16 -0
  390. data/lib/wp/wp-admin/network/theme-install.php +19 -0
  391. data/lib/wp/wp-admin/network/themes.php +291 -0
  392. data/lib/wp/wp-admin/network/update-core.php +16 -0
  393. data/lib/wp/wp-admin/network/update.php +19 -0
  394. data/lib/wp/wp-admin/network/upgrade.php +120 -0
  395. data/lib/wp/wp-admin/network/user-edit.php +16 -0
  396. data/lib/wp/wp-admin/network/user-new.php +106 -0
  397. data/lib/wp/wp-admin/network/users.php +296 -0
  398. data/lib/wp/wp-admin/options-discussion.php +273 -0
  399. data/lib/wp/wp-admin/options-general.php +355 -0
  400. data/lib/wp/wp-admin/options-head.php +18 -0
  401. data/lib/wp/wp-admin/options-media.php +136 -0
  402. data/lib/wp/wp-admin/options-permalink.php +289 -0
  403. data/lib/wp/wp-admin/options-reading.php +184 -0
  404. data/lib/wp/wp-admin/options-writing.php +194 -0
  405. data/lib/wp/wp-admin/options.php +265 -0
  406. data/lib/wp/wp-admin/plugin-editor.php +279 -0
  407. data/lib/wp/wp-admin/plugin-install.php +134 -0
  408. data/lib/wp/wp-admin/plugins.php +474 -0
  409. data/lib/wp/wp-admin/post-new.php +74 -0
  410. data/lib/wp/wp-admin/post.php +318 -0
  411. data/lib/wp/wp-admin/press-this.php +691 -0
  412. data/lib/wp/wp-admin/profile.php +18 -0
  413. data/lib/wp/wp-admin/revision.php +221 -0
  414. data/lib/wp/wp-admin/setup-config.php +345 -0
  415. data/lib/wp/wp-admin/theme-editor.php +243 -0
  416. data/lib/wp/wp-admin/theme-install.php +278 -0
  417. data/lib/wp/wp-admin/themes.php +374 -0
  418. data/lib/wp/wp-admin/tools.php +75 -0
  419. data/lib/wp/wp-admin/update-core.php +653 -0
  420. data/lib/wp/wp-admin/update.php +272 -0
  421. data/lib/wp/wp-admin/upgrade-functions.php +12 -0
  422. data/lib/wp/wp-admin/upgrade.php +116 -0
  423. data/lib/wp/wp-admin/upload.php +292 -0
  424. data/lib/wp/wp-admin/user-edit.php +557 -0
  425. data/lib/wp/wp-admin/user-new.php +439 -0
  426. data/lib/wp/wp-admin/user/about.php +13 -0
  427. data/lib/wp/wp-admin/user/admin.php +32 -0
  428. data/lib/wp/wp-admin/user/credits.php +13 -0
  429. data/lib/wp/wp-admin/user/freedoms.php +13 -0
  430. data/lib/wp/wp-admin/user/index.php +12 -0
  431. data/lib/wp/wp-admin/user/menu.php +22 -0
  432. data/lib/wp/wp-admin/user/profile.php +12 -0
  433. data/lib/wp/wp-admin/user/user-edit.php +12 -0
  434. data/lib/wp/wp-admin/users.php +460 -0
  435. data/lib/wp/wp-admin/widgets.php +442 -0
  436. data/lib/wp/wp-blog-header.php +18 -0
  437. data/lib/wp/wp-comments-post.php +164 -0
  438. data/lib/wp/wp-config-sample.php +80 -0
  439. data/lib/wp/wp-content/index.php +2 -0
  440. data/lib/wp/wp-content/plugins/hello.php +82 -0
  441. data/lib/wp/wp-content/plugins/index.php +2 -0
  442. data/lib/wp/wp-content/themes/index.php +2 -0
  443. data/lib/wp/wp-content/themes/stump/.editorconfig +11 -0
  444. data/lib/wp/wp-content/themes/stump/.jshintrc +16 -0
  445. data/lib/wp/wp-content/themes/stump/404.php +13 -0
  446. data/lib/wp/wp-content/themes/stump/CHANGELOG.md +333 -0
  447. data/lib/wp/wp-content/themes/stump/CONTRIBUTING.md +121 -0
  448. data/lib/wp/wp-content/themes/stump/Gruntfile.js +151 -0
  449. data/lib/wp/wp-content/themes/stump/LICENSE.md +19 -0
  450. data/lib/wp/wp-content/themes/stump/assets/coffee/build/.gitkeep +0 -0
  451. data/lib/wp/wp-content/themes/stump/assets/coffee/build/site.js +6 -0
  452. data/lib/wp/wp-content/themes/stump/assets/css/editor-style.css +548 -0
  453. data/lib/wp/wp-content/themes/stump/assets/css/main.min.css +4 -0
  454. data/lib/wp/wp-content/themes/stump/assets/css/main.min.css.map +7 -0
  455. data/lib/wp/wp-content/themes/stump/assets/fonts/glyphicons-halflings-regular.eot +0 -0
  456. data/lib/wp/wp-content/themes/stump/assets/fonts/glyphicons-halflings-regular.svg +229 -0
  457. data/lib/wp/wp-content/themes/stump/assets/fonts/glyphicons-halflings-regular.ttf +0 -0
  458. data/lib/wp/wp-content/themes/stump/assets/fonts/glyphicons-halflings-regular.woff +0 -0
  459. data/lib/wp/wp-content/themes/stump/assets/img/.gitignore +0 -0
  460. data/lib/wp/wp-content/themes/stump/assets/js/_main.js +63 -0
  461. data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/affix.js +137 -0
  462. data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/alert.js +88 -0
  463. data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/button.js +107 -0
  464. data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/carousel.js +205 -0
  465. data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/collapse.js +170 -0
  466. data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/dropdown.js +147 -0
  467. data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/modal.js +243 -0
  468. data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/popover.js +110 -0
  469. data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/scrollspy.js +153 -0
  470. data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/tab.js +125 -0
  471. data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/tooltip.js +399 -0
  472. data/lib/wp/wp-content/themes/stump/assets/js/plugins/bootstrap/transition.js +48 -0
  473. data/lib/wp/wp-content/themes/stump/assets/js/scripts.min.js +1 -0
  474. data/lib/wp/wp-content/themes/stump/assets/js/vendor/jquery-1.11.0.min.js +4 -0
  475. data/lib/wp/wp-content/themes/stump/assets/js/vendor/modernizr-2.7.0.min.js +4 -0
  476. data/lib/wp/wp-content/themes/stump/assets/sass/app.scss +9 -0
  477. data/lib/wp/wp-content/themes/stump/assets/sass/core/_variables.scss +1 -0
  478. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_alerts.scss +67 -0
  479. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_badges.scss +55 -0
  480. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_bootstrap.scss +49 -0
  481. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_breadcrumbs.scss +26 -0
  482. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_button-groups.scss +226 -0
  483. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_buttons.scss +159 -0
  484. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_carousel.scss +232 -0
  485. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_close.scss +35 -0
  486. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_code.scss +63 -0
  487. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_component-animations.scss +29 -0
  488. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_dropdowns.scss +213 -0
  489. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_forms.scss +436 -0
  490. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_glyphicons.scss +233 -0
  491. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_grid.scss +84 -0
  492. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_input-groups.scss +162 -0
  493. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_jumbotron.scss +44 -0
  494. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_labels.scss +64 -0
  495. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_list-group.scss +110 -0
  496. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_media.scss +56 -0
  497. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_mixins.scss +947 -0
  498. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_modals.scss +139 -0
  499. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_navbar.scss +620 -0
  500. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_navs.scss +242 -0
  501. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_normalize.scss +423 -0
  502. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_pager.scss +55 -0
  503. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_pagination.scss +88 -0
  504. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_panels.scss +241 -0
  505. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_popovers.scss +133 -0
  506. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_print.scss +101 -0
  507. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_progress-bars.scss +80 -0
  508. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_responsive-utilities.scss +74 -0
  509. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_scaffolding.scss +134 -0
  510. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_tables.scss +233 -0
  511. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_theme.scss +247 -0
  512. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_thumbnails.scss +38 -0
  513. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_tooltip.scss +95 -0
  514. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_type.scss +284 -0
  515. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_utilities.scss +56 -0
  516. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_variables.scss +833 -0
  517. data/lib/wp/wp-content/themes/stump/assets/vendor/bootstrap/_wells.scss +29 -0
  518. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/_bourbon-deprecated-upcoming.scss +13 -0
  519. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/_bourbon.scss +59 -0
  520. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_button.scss +273 -0
  521. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_clearfix.scss +29 -0
  522. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_font-family.scss +5 -0
  523. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_hide-text.scss +5 -0
  524. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_html5-input-types.scss +56 -0
  525. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_position.scss +42 -0
  526. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_prefixer.scss +49 -0
  527. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_retina-image.scss +32 -0
  528. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_size.scss +44 -0
  529. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_timing-functions.scss +32 -0
  530. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/addons/_triangle.scss +45 -0
  531. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_animation.scss +52 -0
  532. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_appearance.scss +3 -0
  533. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_backface-visibility.scss +6 -0
  534. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_background-image.scss +48 -0
  535. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_background.scss +103 -0
  536. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_border-image.scss +55 -0
  537. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_border-radius.scss +22 -0
  538. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_box-sizing.scss +4 -0
  539. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_columns.scss +47 -0
  540. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_flex-box.scss +52 -0
  541. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_font-face.scss +23 -0
  542. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_hidpi-media-query.scss +10 -0
  543. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_image-rendering.scss +13 -0
  544. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_inline-block.scss +8 -0
  545. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_keyframes.scss +43 -0
  546. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_linear-gradient.scss +41 -0
  547. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_perspective.scss +8 -0
  548. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_placeholder.scss +29 -0
  549. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_radial-gradient.scss +44 -0
  550. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_transform.scss +15 -0
  551. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_transition.scss +34 -0
  552. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/css3/_user-select.scss +3 -0
  553. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_compact.scss +11 -0
  554. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_flex-grid.scss +39 -0
  555. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_grid-width.scss +13 -0
  556. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_linear-gradient.scss +13 -0
  557. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_modular-scale.scss +40 -0
  558. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_px-to-em.scss +8 -0
  559. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_radial-gradient.scss +23 -0
  560. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_tint-shade.scss +9 -0
  561. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/functions/_transition-property-name.scss +22 -0
  562. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/helpers/_deprecated-webkit-gradient.scss +39 -0
  563. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/helpers/_gradient-positions-parser.scss +13 -0
  564. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/helpers/_linear-positions-parser.scss +61 -0
  565. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/helpers/_radial-arg-parser.scss +69 -0
  566. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/helpers/_radial-positions-parser.scss +18 -0
  567. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/helpers/_render-gradients.scss +26 -0
  568. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/bourbon/helpers/_shape-size-stripper.scss +10 -0
  569. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/manhattan.sass +11 -0
  570. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/manhattan/_grid.sass +161 -0
  571. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/manhattan/_mixins.sass +63 -0
  572. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/manhattan/_utilities.sass +24 -0
  573. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/manhattan/_variables.sass +42 -0
  574. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/_neat-helpers.scss +8 -0
  575. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/_neat.scss +21 -0
  576. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/functions/_new-breakpoint.scss +16 -0
  577. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/functions/_private.scss +107 -0
  578. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/functions/_px-to-em.scss +3 -0
  579. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_fill-parent.scss +7 -0
  580. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_grid.scss +5 -0
  581. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_media.scss +51 -0
  582. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_omega.scss +79 -0
  583. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_outer-container.scss +8 -0
  584. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_pad.scss +8 -0
  585. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_private.scss +50 -0
  586. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_reset.scss +12 -0
  587. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_row.scss +17 -0
  588. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_shift.scss +9 -0
  589. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_span-columns.scss +38 -0
  590. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_to-deprecate.scss +57 -0
  591. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/grid/_visual-grid.scss +41 -0
  592. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/settings/_grid.scss +7 -0
  593. data/lib/wp/wp-content/themes/stump/assets/vendor/manhattan/neat/settings/_visual-grid.scss +5 -0
  594. data/lib/wp/wp-content/themes/stump/base.php +36 -0
  595. data/lib/wp/wp-content/themes/stump/functions.php +19 -0
  596. data/lib/wp/wp-content/themes/stump/index.php +21 -0
  597. data/lib/wp/wp-content/themes/stump/lang/ar.mo +0 -0
  598. data/lib/wp/wp-content/themes/stump/lang/ar.po +270 -0
  599. data/lib/wp/wp-content/themes/stump/lang/bg_BG.mo +0 -0
  600. data/lib/wp/wp-content/themes/stump/lang/bg_BG.po +338 -0
  601. data/lib/wp/wp-content/themes/stump/lang/ca.mo +0 -0
  602. data/lib/wp/wp-content/themes/stump/lang/ca.po +517 -0
  603. data/lib/wp/wp-content/themes/stump/lang/da_DK.mo +0 -0
  604. data/lib/wp/wp-content/themes/stump/lang/da_DK.po +305 -0
  605. data/lib/wp/wp-content/themes/stump/lang/de_DE.mo +0 -0
  606. data/lib/wp/wp-content/themes/stump/lang/de_DE.po +271 -0
  607. data/lib/wp/wp-content/themes/stump/lang/el.mo +0 -0
  608. data/lib/wp/wp-content/themes/stump/lang/el.po +319 -0
  609. data/lib/wp/wp-content/themes/stump/lang/es_ES.mo +0 -0
  610. data/lib/wp/wp-content/themes/stump/lang/es_ES.po +270 -0
  611. data/lib/wp/wp-content/themes/stump/lang/et.mo +0 -0
  612. data/lib/wp/wp-content/themes/stump/lang/et.po +262 -0
  613. data/lib/wp/wp-content/themes/stump/lang/fa_IR.mo +0 -0
  614. data/lib/wp/wp-content/themes/stump/lang/fa_IR.po +273 -0
  615. data/lib/wp/wp-content/themes/stump/lang/fi_FI.mo +0 -0
  616. data/lib/wp/wp-content/themes/stump/lang/fi_FI.po +367 -0
  617. data/lib/wp/wp-content/themes/stump/lang/fr_FR.mo +0 -0
  618. data/lib/wp/wp-content/themes/stump/lang/fr_FR.po +336 -0
  619. data/lib/wp/wp-content/themes/stump/lang/he_IL.mo +0 -0
  620. data/lib/wp/wp-content/themes/stump/lang/he_IL.po +336 -0
  621. data/lib/wp/wp-content/themes/stump/lang/hu_HU.mo +0 -0
  622. data/lib/wp/wp-content/themes/stump/lang/hu_HU.po +271 -0
  623. data/lib/wp/wp-content/themes/stump/lang/id_ID.mo +0 -0
  624. data/lib/wp/wp-content/themes/stump/lang/id_ID.po +278 -0
  625. data/lib/wp/wp-content/themes/stump/lang/it_IT.mo +0 -0
  626. data/lib/wp/wp-content/themes/stump/lang/it_IT.po +269 -0
  627. data/lib/wp/wp-content/themes/stump/lang/ja.mo +0 -0
  628. data/lib/wp/wp-content/themes/stump/lang/ja.po +267 -0
  629. data/lib/wp/wp-content/themes/stump/lang/ko_KR.mo +0 -0
  630. data/lib/wp/wp-content/themes/stump/lang/ko_KR.po +282 -0
  631. data/lib/wp/wp-content/themes/stump/lang/mk_MK.mo +0 -0
  632. data/lib/wp/wp-content/themes/stump/lang/mk_MK.po +297 -0
  633. data/lib/wp/wp-content/themes/stump/lang/ms_MY.mo +0 -0
  634. data/lib/wp/wp-content/themes/stump/lang/ms_MY.po +342 -0
  635. data/lib/wp/wp-content/themes/stump/lang/nb_NO.mo +0 -0
  636. data/lib/wp/wp-content/themes/stump/lang/nb_NO.po +517 -0
  637. data/lib/wp/wp-content/themes/stump/lang/nl_NL.mo +0 -0
  638. data/lib/wp/wp-content/themes/stump/lang/nl_NL.po +261 -0
  639. data/lib/wp/wp-content/themes/stump/lang/nn_NO.mo +0 -0
  640. data/lib/wp/wp-content/themes/stump/lang/nn_NO.po +517 -0
  641. data/lib/wp/wp-content/themes/stump/lang/pl_PL.mo +0 -0
  642. data/lib/wp/wp-content/themes/stump/lang/pl_PL.po +283 -0
  643. data/lib/wp/wp-content/themes/stump/lang/pt_BR.mo +0 -0
  644. data/lib/wp/wp-content/themes/stump/lang/pt_BR.po +394 -0
  645. data/lib/wp/wp-content/themes/stump/lang/ro_RO.mo +0 -0
  646. data/lib/wp/wp-content/themes/stump/lang/ro_RO.po +271 -0
  647. data/lib/wp/wp-content/themes/stump/lang/roots.pot +244 -0
  648. data/lib/wp/wp-content/themes/stump/lang/ru_RU.mo +0 -0
  649. data/lib/wp/wp-content/themes/stump/lang/ru_RU.po +255 -0
  650. data/lib/wp/wp-content/themes/stump/lang/sk_SK.mo +0 -0
  651. data/lib/wp/wp-content/themes/stump/lang/sk_SK.po +267 -0
  652. data/lib/wp/wp-content/themes/stump/lang/sr_RS.mo +0 -0
  653. data/lib/wp/wp-content/themes/stump/lang/sr_RS.pot +261 -0
  654. data/lib/wp/wp-content/themes/stump/lang/sv_SE.mo +0 -0
  655. data/lib/wp/wp-content/themes/stump/lang/sv_SE.po +323 -0
  656. data/lib/wp/wp-content/themes/stump/lang/tr_TR.mo +0 -0
  657. data/lib/wp/wp-content/themes/stump/lang/tr_TR.po +405 -0
  658. data/lib/wp/wp-content/themes/stump/lang/vi_VN.mo +0 -0
  659. data/lib/wp/wp-content/themes/stump/lang/vi_VN.po +516 -0
  660. data/lib/wp/wp-content/themes/stump/lang/zh_CN.mo +0 -0
  661. data/lib/wp/wp-content/themes/stump/lang/zh_CN.po +329 -0
  662. data/lib/wp/wp-content/themes/stump/lang/zh_TW.mo +0 -0
  663. data/lib/wp/wp-content/themes/stump/lang/zh_TW.po +261 -0
  664. data/lib/wp/wp-content/themes/stump/lib/activation.php +215 -0
  665. data/lib/wp/wp-content/themes/stump/lib/cleanup.php +261 -0
  666. data/lib/wp/wp-content/themes/stump/lib/comments.php +52 -0
  667. data/lib/wp/wp-content/themes/stump/lib/config.php +79 -0
  668. data/lib/wp/wp-content/themes/stump/lib/custom.php +4 -0
  669. data/lib/wp/wp-content/themes/stump/lib/gallery.php +130 -0
  670. data/lib/wp/wp-content/themes/stump/lib/init.php +25 -0
  671. data/lib/wp/wp-content/themes/stump/lib/nav.php +93 -0
  672. data/lib/wp/wp-content/themes/stump/lib/relative-urls.php +50 -0
  673. data/lib/wp/wp-content/themes/stump/lib/scripts.php +67 -0
  674. data/lib/wp/wp-content/themes/stump/lib/sidebar.php +43 -0
  675. data/lib/wp/wp-content/themes/stump/lib/titles.php +37 -0
  676. data/lib/wp/wp-content/themes/stump/lib/utils.php +14 -0
  677. data/lib/wp/wp-content/themes/stump/lib/widgets.php +133 -0
  678. data/lib/wp/wp-content/themes/stump/lib/wrapper.php +49 -0
  679. data/lib/wp/wp-content/themes/stump/package.json +32 -0
  680. data/lib/wp/wp-content/themes/stump/page.php +2 -0
  681. data/lib/wp/wp-content/themes/stump/screenshot.png +0 -0
  682. data/lib/wp/wp-content/themes/stump/single.php +1 -0
  683. data/lib/wp/wp-content/themes/stump/style.css +11 -0
  684. data/lib/wp/wp-content/themes/stump/template-custom.php +8 -0
  685. data/lib/wp/wp-content/themes/stump/templates/comment.php +14 -0
  686. data/lib/wp/wp-content/themes/stump/templates/comments.php +80 -0
  687. data/lib/wp/wp-content/themes/stump/templates/content-page.php +4 -0
  688. data/lib/wp/wp-content/themes/stump/templates/content-single.php +15 -0
  689. data/lib/wp/wp-content/themes/stump/templates/content.php +9 -0
  690. data/lib/wp/wp-content/themes/stump/templates/entry-meta.php +2 -0
  691. data/lib/wp/wp-content/themes/stump/templates/footer.php +8 -0
  692. data/lib/wp/wp-content/themes/stump/templates/head.php +12 -0
  693. data/lib/wp/wp-content/themes/stump/templates/header-top-navbar.php +21 -0
  694. data/lib/wp/wp-content/themes/stump/templates/header.php +14 -0
  695. data/lib/wp/wp-content/themes/stump/templates/page-header.php +5 -0
  696. data/lib/wp/wp-content/themes/stump/templates/searchform.php +9 -0
  697. data/lib/wp/wp-content/themes/stump/templates/sidebar.php +1 -0
  698. data/lib/wp/wp-content/themes/twentyfourteen/404.php +32 -0
  699. data/lib/wp/wp-content/themes/twentyfourteen/archive.php +74 -0
  700. data/lib/wp/wp-content/themes/twentyfourteen/author.php +74 -0
  701. data/lib/wp/wp-content/themes/twentyfourteen/category.php +58 -0
  702. data/lib/wp/wp-content/themes/twentyfourteen/comments.php +66 -0
  703. data/lib/wp/wp-content/themes/twentyfourteen/content-aside.php +57 -0
  704. data/lib/wp/wp-content/themes/twentyfourteen/content-audio.php +57 -0
  705. data/lib/wp/wp-content/themes/twentyfourteen/content-featured-post.php +34 -0
  706. data/lib/wp/wp-content/themes/twentyfourteen/content-gallery.php +57 -0
  707. data/lib/wp/wp-content/themes/twentyfourteen/content-image.php +57 -0
  708. data/lib/wp/wp-content/themes/twentyfourteen/content-link.php +57 -0
  709. data/lib/wp/wp-content/themes/twentyfourteen/content-none.php +31 -0
  710. data/lib/wp/wp-content/themes/twentyfourteen/content-page.php +31 -0
  711. data/lib/wp/wp-content/themes/twentyfourteen/content-quote.php +57 -0
  712. data/lib/wp/wp-content/themes/twentyfourteen/content-video.php +57 -0
  713. data/lib/wp/wp-content/themes/twentyfourteen/content.php +66 -0
  714. data/lib/wp/wp-content/themes/twentyfourteen/css/editor-style.css +717 -0
  715. data/lib/wp/wp-content/themes/twentyfourteen/css/ie.css +1335 -0
  716. data/lib/wp/wp-content/themes/twentyfourteen/featured-content.php +39 -0
  717. data/lib/wp/wp-content/themes/twentyfourteen/footer.php +28 -0
  718. data/lib/wp/wp-content/themes/twentyfourteen/functions.php +519 -0
  719. data/lib/wp/wp-content/themes/twentyfourteen/genericons/COPYING.txt +9 -0
  720. data/lib/wp/wp-content/themes/twentyfourteen/genericons/Genericons-Regular.otf +0 -0
  721. data/lib/wp/wp-content/themes/twentyfourteen/genericons/LICENSE.txt +339 -0
  722. data/lib/wp/wp-content/themes/twentyfourteen/genericons/README.txt +123 -0
  723. data/lib/wp/wp-content/themes/twentyfourteen/genericons/example.html +464 -0
  724. data/lib/wp/wp-content/themes/twentyfourteen/genericons/font/genericons-regular-webfont.eot +0 -0
  725. data/lib/wp/wp-content/themes/twentyfourteen/genericons/font/genericons-regular-webfont.svg +135 -0
  726. data/lib/wp/wp-content/themes/twentyfourteen/genericons/font/genericons-regular-webfont.ttf +0 -0
  727. data/lib/wp/wp-content/themes/twentyfourteen/genericons/font/genericons-regular-webfont.woff +0 -0
  728. data/lib/wp/wp-content/themes/twentyfourteen/genericons/genericons.css +197 -0
  729. data/lib/wp/wp-content/themes/twentyfourteen/header.php +65 -0
  730. data/lib/wp/wp-content/themes/twentyfourteen/image.php +79 -0
  731. data/lib/wp/wp-content/themes/twentyfourteen/images/pattern-dark.svg +16 -0
  732. data/lib/wp/wp-content/themes/twentyfourteen/images/pattern-light.svg +6 -0
  733. data/lib/wp/wp-content/themes/twentyfourteen/inc/back-compat.php +63 -0
  734. data/lib/wp/wp-content/themes/twentyfourteen/inc/custom-header.php +147 -0
  735. data/lib/wp/wp-content/themes/twentyfourteen/inc/customizer.php +114 -0
  736. data/lib/wp/wp-content/themes/twentyfourteen/inc/featured-content.php +531 -0
  737. data/lib/wp/wp-content/themes/twentyfourteen/inc/template-tags.php +203 -0
  738. data/lib/wp/wp-content/themes/twentyfourteen/inc/widgets.php +269 -0
  739. data/lib/wp/wp-content/themes/twentyfourteen/index.php +61 -0
  740. data/lib/wp/wp-content/themes/twentyfourteen/js/customizer.js +38 -0
  741. data/lib/wp/wp-content/themes/twentyfourteen/js/featured-content-admin.js +9 -0
  742. data/lib/wp/wp-content/themes/twentyfourteen/js/functions.js +134 -0
  743. data/lib/wp/wp-content/themes/twentyfourteen/js/html5.js +8 -0
  744. data/lib/wp/wp-content/themes/twentyfourteen/js/keyboard-image-navigation.js +21 -0
  745. data/lib/wp/wp-content/themes/twentyfourteen/js/slider.js +598 -0
  746. data/lib/wp/wp-content/themes/twentyfourteen/languages/twentyfourteen.pot +467 -0
  747. data/lib/wp/wp-content/themes/twentyfourteen/page-templates/contributors.php +52 -0
  748. data/lib/wp/wp-content/themes/twentyfourteen/page-templates/full-width.php +42 -0
  749. data/lib/wp/wp-content/themes/twentyfourteen/page.php +48 -0
  750. data/lib/wp/wp-content/themes/twentyfourteen/rtl.css +854 -0
  751. data/lib/wp/wp-content/themes/twentyfourteen/screenshot.png +0 -0
  752. data/lib/wp/wp-content/themes/twentyfourteen/search.php +49 -0
  753. data/lib/wp/wp-content/themes/twentyfourteen/sidebar-content.php +16 -0
  754. data/lib/wp/wp-content/themes/twentyfourteen/sidebar-footer.php +19 -0
  755. data/lib/wp/wp-content/themes/twentyfourteen/sidebar.php +29 -0
  756. data/lib/wp/wp-content/themes/twentyfourteen/single.php +40 -0
  757. data/lib/wp/wp-content/themes/twentyfourteen/style.css +4321 -0
  758. data/lib/wp/wp-content/themes/twentyfourteen/tag.php +60 -0
  759. data/lib/wp/wp-content/themes/twentyfourteen/taxonomy-post_format.php +85 -0
  760. data/lib/wp/wp-cron.php +115 -0
  761. data/lib/wp/wp-includes/ID3/getid3.lib.php +1376 -0
  762. data/lib/wp/wp-includes/ID3/getid3.php +1796 -0
  763. data/lib/wp/wp-includes/ID3/license.commercial.txt +27 -0
  764. data/lib/wp/wp-includes/ID3/license.txt +29 -0
  765. data/lib/wp/wp-includes/ID3/module.audio-video.asf.php +2013 -0
  766. data/lib/wp/wp-includes/ID3/module.audio-video.flv.php +745 -0
  767. data/lib/wp/wp-includes/ID3/module.audio-video.matroska.php +1751 -0
  768. data/lib/wp/wp-includes/ID3/module.audio-video.quicktime.php +2246 -0
  769. data/lib/wp/wp-includes/ID3/module.audio-video.riff.php +2586 -0
  770. data/lib/wp/wp-includes/ID3/module.audio.ac3.php +474 -0
  771. data/lib/wp/wp-includes/ID3/module.audio.dts.php +291 -0
  772. data/lib/wp/wp-includes/ID3/module.audio.flac.php +443 -0
  773. data/lib/wp/wp-includes/ID3/module.audio.mp3.php +2012 -0
  774. data/lib/wp/wp-includes/ID3/module.audio.ogg.php +756 -0
  775. data/lib/wp/wp-includes/ID3/module.tag.apetag.php +371 -0
  776. data/lib/wp/wp-includes/ID3/module.tag.id3v1.php +360 -0
  777. data/lib/wp/wp-includes/ID3/module.tag.id3v2.php +3424 -0
  778. data/lib/wp/wp-includes/ID3/module.tag.lyrics3.php +294 -0
  779. data/lib/wp/wp-includes/ID3/readme.txt +604 -0
  780. data/lib/wp/wp-includes/SimplePie/Author.php +157 -0
  781. data/lib/wp/wp-includes/SimplePie/Cache.php +133 -0
  782. data/lib/wp/wp-includes/SimplePie/Cache/Base.php +114 -0
  783. data/lib/wp/wp-includes/SimplePie/Cache/DB.php +137 -0
  784. data/lib/wp/wp-includes/SimplePie/Cache/File.php +173 -0
  785. data/lib/wp/wp-includes/SimplePie/Cache/Memcache.php +183 -0
  786. data/lib/wp/wp-includes/SimplePie/Cache/MySQL.php +438 -0
  787. data/lib/wp/wp-includes/SimplePie/Caption.php +210 -0
  788. data/lib/wp/wp-includes/SimplePie/Category.php +157 -0
  789. data/lib/wp/wp-includes/SimplePie/Content/Type/Sniffer.php +332 -0
  790. data/lib/wp/wp-includes/SimplePie/Copyright.php +130 -0
  791. data/lib/wp/wp-includes/SimplePie/Core.php +57 -0
  792. data/lib/wp/wp-includes/SimplePie/Credit.php +156 -0
  793. data/lib/wp/wp-includes/SimplePie/Decode/HTML/Entities.php +617 -0
  794. data/lib/wp/wp-includes/SimplePie/Enclosure.php +1380 -0
  795. data/lib/wp/wp-includes/SimplePie/Exception.php +52 -0
  796. data/lib/wp/wp-includes/SimplePie/File.php +292 -0
  797. data/lib/wp/wp-includes/SimplePie/HTTP/Parser.php +500 -0
  798. data/lib/wp/wp-includes/SimplePie/IRI.php +1238 -0
  799. data/lib/wp/wp-includes/SimplePie/Item.php +2964 -0
  800. data/lib/wp/wp-includes/SimplePie/Locator.php +372 -0
  801. data/lib/wp/wp-includes/SimplePie/Misc.php +2247 -0
  802. data/lib/wp/wp-includes/SimplePie/Net/IPv6.php +276 -0
  803. data/lib/wp/wp-includes/SimplePie/Parse/Date.php +983 -0
  804. data/lib/wp/wp-includes/SimplePie/Parser.php +407 -0
  805. data/lib/wp/wp-includes/SimplePie/Rating.php +129 -0
  806. data/lib/wp/wp-includes/SimplePie/Registry.php +225 -0
  807. data/lib/wp/wp-includes/SimplePie/Restriction.php +155 -0
  808. data/lib/wp/wp-includes/SimplePie/Sanitize.php +554 -0
  809. data/lib/wp/wp-includes/SimplePie/Source.php +611 -0
  810. data/lib/wp/wp-includes/SimplePie/XML/Declaration/Parser.php +362 -0
  811. data/lib/wp/wp-includes/SimplePie/gzdecode.php +371 -0
  812. data/lib/wp/wp-includes/Text/Diff.php +450 -0
  813. data/lib/wp/wp-includes/Text/Diff/Engine/native.php +436 -0
  814. data/lib/wp/wp-includes/Text/Diff/Engine/shell.php +162 -0
  815. data/lib/wp/wp-includes/Text/Diff/Engine/string.php +248 -0
  816. data/lib/wp/wp-includes/Text/Diff/Engine/xdiff.php +64 -0
  817. data/lib/wp/wp-includes/Text/Diff/Renderer.php +235 -0
  818. data/lib/wp/wp-includes/Text/Diff/Renderer/inline.php +206 -0
  819. data/lib/wp/wp-includes/admin-bar.php +870 -0
  820. data/lib/wp/wp-includes/atomlib.php +352 -0
  821. data/lib/wp/wp-includes/author-template.php +471 -0
  822. data/lib/wp/wp-includes/bookmark-template.php +298 -0
  823. data/lib/wp/wp-includes/bookmark.php +416 -0
  824. data/lib/wp/wp-includes/cache.php +704 -0
  825. data/lib/wp/wp-includes/canonical.php +586 -0
  826. data/lib/wp/wp-includes/capabilities.php +1539 -0
  827. data/lib/wp/wp-includes/category-template.php +1407 -0
  828. data/lib/wp/wp-includes/category.php +343 -0
  829. data/lib/wp/wp-includes/certificates/ca-bundle.crt +3785 -0
  830. data/lib/wp/wp-includes/class-IXR.php +1100 -0
  831. data/lib/wp/wp-includes/class-feed.php +140 -0
  832. data/lib/wp/wp-includes/class-http.php +2245 -0
  833. data/lib/wp/wp-includes/class-json.php +936 -0
  834. data/lib/wp/wp-includes/class-oembed.php +579 -0
  835. data/lib/wp/wp-includes/class-phpass.php +260 -0
  836. data/lib/wp/wp-includes/class-phpmailer.php +3265 -0
  837. data/lib/wp/wp-includes/class-pop3.php +652 -0
  838. data/lib/wp/wp-includes/class-simplepie.php +3119 -0
  839. data/lib/wp/wp-includes/class-smtp.php +943 -0
  840. data/lib/wp/wp-includes/class-snoopy.php +1256 -0
  841. data/lib/wp/wp-includes/class-wp-admin-bar.php +517 -0
  842. data/lib/wp/wp-includes/class-wp-ajax-response.php +199 -0
  843. data/lib/wp/wp-includes/class-wp-customize-control.php +1124 -0
  844. data/lib/wp/wp-includes/class-wp-customize-manager.php +1272 -0
  845. data/lib/wp/wp-includes/class-wp-customize-panel.php +200 -0
  846. data/lib/wp/wp-includes/class-wp-customize-section.php +196 -0
  847. data/lib/wp/wp-includes/class-wp-customize-setting.php +554 -0
  848. data/lib/wp/wp-includes/class-wp-customize-widgets.php +1556 -0
  849. data/lib/wp/wp-includes/class-wp-editor.php +1435 -0
  850. data/lib/wp/wp-includes/class-wp-embed.php +373 -0
  851. data/lib/wp/wp-includes/class-wp-error.php +276 -0
  852. data/lib/wp/wp-includes/class-wp-http-ixr-client.php +97 -0
  853. data/lib/wp/wp-includes/class-wp-image-editor-gd.php +459 -0
  854. data/lib/wp/wp-includes/class-wp-image-editor-imagick.php +512 -0
  855. data/lib/wp/wp-includes/class-wp-image-editor.php +475 -0
  856. data/lib/wp/wp-includes/class-wp-theme.php +1235 -0
  857. data/lib/wp/wp-includes/class-wp-walker.php +471 -0
  858. data/lib/wp/wp-includes/class-wp-xmlrpc-server.php +5984 -0
  859. data/lib/wp/wp-includes/class-wp.php +782 -0
  860. data/lib/wp/wp-includes/class.wp-dependencies.php +509 -0
  861. data/lib/wp/wp-includes/class.wp-scripts.php +247 -0
  862. data/lib/wp/wp-includes/class.wp-styles.php +210 -0
  863. data/lib/wp/wp-includes/comment-template.php +2286 -0
  864. data/lib/wp/wp-includes/comment.php +2606 -0
  865. data/lib/wp/wp-includes/compat.php +125 -0
  866. data/lib/wp/wp-includes/cron.php +469 -0
  867. data/lib/wp/wp-includes/css/admin-bar-rtl.css +1099 -0
  868. data/lib/wp/wp-includes/css/admin-bar-rtl.min.css +1 -0
  869. data/lib/wp/wp-includes/css/admin-bar.css +1099 -0
  870. data/lib/wp/wp-includes/css/admin-bar.min.css +1 -0
  871. data/lib/wp/wp-includes/css/buttons-rtl.css +364 -0
  872. data/lib/wp/wp-includes/css/buttons-rtl.min.css +1 -0
  873. data/lib/wp/wp-includes/css/buttons.css +364 -0
  874. data/lib/wp/wp-includes/css/buttons.min.css +1 -0
  875. data/lib/wp/wp-includes/css/dashicons.css +893 -0
  876. data/lib/wp/wp-includes/css/dashicons.min.css +1 -0
  877. data/lib/wp/wp-includes/css/editor-rtl.css +1993 -0
  878. data/lib/wp/wp-includes/css/editor-rtl.min.css +1 -0
  879. data/lib/wp/wp-includes/css/editor.css +1993 -0
  880. data/lib/wp/wp-includes/css/editor.min.css +1 -0
  881. data/lib/wp/wp-includes/css/jquery-ui-dialog-rtl.css +343 -0
  882. data/lib/wp/wp-includes/css/jquery-ui-dialog-rtl.min.css +19 -0
  883. data/lib/wp/wp-includes/css/jquery-ui-dialog.css +343 -0
  884. data/lib/wp/wp-includes/css/jquery-ui-dialog.min.css +19 -0
  885. data/lib/wp/wp-includes/css/media-views-rtl.css +2568 -0
  886. data/lib/wp/wp-includes/css/media-views-rtl.min.css +1 -0
  887. data/lib/wp/wp-includes/css/media-views.css +2568 -0
  888. data/lib/wp/wp-includes/css/media-views.min.css +1 -0
  889. data/lib/wp/wp-includes/css/wp-auth-check-rtl.css +100 -0
  890. data/lib/wp/wp-includes/css/wp-auth-check-rtl.min.css +1 -0
  891. data/lib/wp/wp-includes/css/wp-auth-check.css +100 -0
  892. data/lib/wp/wp-includes/css/wp-auth-check.min.css +1 -0
  893. data/lib/wp/wp-includes/css/wp-pointer-rtl.css +212 -0
  894. data/lib/wp/wp-includes/css/wp-pointer-rtl.min.css +1 -0
  895. data/lib/wp/wp-includes/css/wp-pointer.css +212 -0
  896. data/lib/wp/wp-includes/css/wp-pointer.min.css +1 -0
  897. data/lib/wp/wp-includes/date.php +475 -0
  898. data/lib/wp/wp-includes/default-constants.php +323 -0
  899. data/lib/wp/wp-includes/default-filters.php +307 -0
  900. data/lib/wp/wp-includes/default-widgets.php +1423 -0
  901. data/lib/wp/wp-includes/deprecated.php +3501 -0
  902. data/lib/wp/wp-includes/feed-atom-comments.php +115 -0
  903. data/lib/wp/wp-includes/feed-atom.php +87 -0
  904. data/lib/wp/wp-includes/feed-rdf.php +81 -0
  905. data/lib/wp/wp-includes/feed-rss.php +46 -0
  906. data/lib/wp/wp-includes/feed-rss2-comments.php +97 -0
  907. data/lib/wp/wp-includes/feed-rss2.php +115 -0
  908. data/lib/wp/wp-includes/feed.php +659 -0
  909. data/lib/wp/wp-includes/fonts/dashicons.eot +0 -0
  910. data/lib/wp/wp-includes/fonts/dashicons.svg +250 -0
  911. data/lib/wp/wp-includes/fonts/dashicons.ttf +0 -0
  912. data/lib/wp/wp-includes/fonts/dashicons.woff +0 -0
  913. data/lib/wp/wp-includes/formatting.php +4006 -0
  914. data/lib/wp/wp-includes/functions.php +4631 -0
  915. data/lib/wp/wp-includes/functions.wp-scripts.php +258 -0
  916. data/lib/wp/wp-includes/functions.wp-styles.php +245 -0
  917. data/lib/wp/wp-includes/general-template.php +2982 -0
  918. data/lib/wp/wp-includes/http.php +551 -0
  919. data/lib/wp/wp-includes/images/admin-bar-sprite-2x.png +0 -0
  920. data/lib/wp/wp-includes/images/admin-bar-sprite.png +0 -0
  921. data/lib/wp/wp-includes/images/arrow-pointer-blue-2x.png +0 -0
  922. data/lib/wp/wp-includes/images/arrow-pointer-blue.png +0 -0
  923. data/lib/wp/wp-includes/images/blank.gif +0 -0
  924. data/lib/wp/wp-includes/images/crystal/archive.png +0 -0
  925. data/lib/wp/wp-includes/images/crystal/audio.png +0 -0
  926. data/lib/wp/wp-includes/images/crystal/code.png +0 -0
  927. data/lib/wp/wp-includes/images/crystal/default.png +0 -0
  928. data/lib/wp/wp-includes/images/crystal/document.png +0 -0
  929. data/lib/wp/wp-includes/images/crystal/interactive.png +0 -0
  930. data/lib/wp/wp-includes/images/crystal/license.txt +9 -0
  931. data/lib/wp/wp-includes/images/crystal/spreadsheet.png +0 -0
  932. data/lib/wp/wp-includes/images/crystal/text.png +0 -0
  933. data/lib/wp/wp-includes/images/crystal/video.png +0 -0
  934. data/lib/wp/wp-includes/images/down_arrow-2x.gif +0 -0
  935. data/lib/wp/wp-includes/images/down_arrow.gif +0 -0
  936. data/lib/wp/wp-includes/images/icon-pointer-flag-2x.png +0 -0
  937. data/lib/wp/wp-includes/images/icon-pointer-flag.png +0 -0
  938. data/lib/wp/wp-includes/images/media/archive.png +0 -0
  939. data/lib/wp/wp-includes/images/media/audio.png +0 -0
  940. data/lib/wp/wp-includes/images/media/code.png +0 -0
  941. data/lib/wp/wp-includes/images/media/default.png +0 -0
  942. data/lib/wp/wp-includes/images/media/document.png +0 -0
  943. data/lib/wp/wp-includes/images/media/interactive.png +0 -0
  944. data/lib/wp/wp-includes/images/media/spreadsheet.png +0 -0
  945. data/lib/wp/wp-includes/images/media/text.png +0 -0
  946. data/lib/wp/wp-includes/images/media/video.png +0 -0
  947. data/lib/wp/wp-includes/images/rss-2x.png +0 -0
  948. data/lib/wp/wp-includes/images/rss.png +0 -0
  949. data/lib/wp/wp-includes/images/smilies/icon_arrow.gif +0 -0
  950. data/lib/wp/wp-includes/images/smilies/icon_biggrin.gif +0 -0
  951. data/lib/wp/wp-includes/images/smilies/icon_confused.gif +0 -0
  952. data/lib/wp/wp-includes/images/smilies/icon_cool.gif +0 -0
  953. data/lib/wp/wp-includes/images/smilies/icon_cry.gif +0 -0
  954. data/lib/wp/wp-includes/images/smilies/icon_eek.gif +0 -0
  955. data/lib/wp/wp-includes/images/smilies/icon_evil.gif +0 -0
  956. data/lib/wp/wp-includes/images/smilies/icon_exclaim.gif +0 -0
  957. data/lib/wp/wp-includes/images/smilies/icon_idea.gif +0 -0
  958. data/lib/wp/wp-includes/images/smilies/icon_lol.gif +0 -0
  959. data/lib/wp/wp-includes/images/smilies/icon_mad.gif +0 -0
  960. data/lib/wp/wp-includes/images/smilies/icon_mrgreen.gif +0 -0
  961. data/lib/wp/wp-includes/images/smilies/icon_neutral.gif +0 -0
  962. data/lib/wp/wp-includes/images/smilies/icon_question.gif +0 -0
  963. data/lib/wp/wp-includes/images/smilies/icon_razz.gif +0 -0
  964. data/lib/wp/wp-includes/images/smilies/icon_redface.gif +0 -0
  965. data/lib/wp/wp-includes/images/smilies/icon_rolleyes.gif +0 -0
  966. data/lib/wp/wp-includes/images/smilies/icon_sad.gif +0 -0
  967. data/lib/wp/wp-includes/images/smilies/icon_smile.gif +0 -0
  968. data/lib/wp/wp-includes/images/smilies/icon_surprised.gif +0 -0
  969. data/lib/wp/wp-includes/images/smilies/icon_twisted.gif +0 -0
  970. data/lib/wp/wp-includes/images/smilies/icon_wink.gif +0 -0
  971. data/lib/wp/wp-includes/images/spinner-2x.gif +0 -0
  972. data/lib/wp/wp-includes/images/spinner.gif +0 -0
  973. data/lib/wp/wp-includes/images/toggle-arrow-2x.png +0 -0
  974. data/lib/wp/wp-includes/images/toggle-arrow.png +0 -0
  975. data/lib/wp/wp-includes/images/uploader-icons-2x.png +0 -0
  976. data/lib/wp/wp-includes/images/uploader-icons.png +0 -0
  977. data/lib/wp/wp-includes/images/wlw/wp-comments.png +0 -0
  978. data/lib/wp/wp-includes/images/wlw/wp-icon.png +0 -0
  979. data/lib/wp/wp-includes/images/wlw/wp-watermark.png +0 -0
  980. data/lib/wp/wp-includes/images/wpicons-2x.png +0 -0
  981. data/lib/wp/wp-includes/images/wpicons.png +0 -0
  982. data/lib/wp/wp-includes/images/wpspin-2x.gif +0 -0
  983. data/lib/wp/wp-includes/images/wpspin.gif +0 -0
  984. data/lib/wp/wp-includes/images/xit-2x.gif +0 -0
  985. data/lib/wp/wp-includes/images/xit.gif +0 -0
  986. data/lib/wp/wp-includes/js/admin-bar.js +365 -0
  987. data/lib/wp/wp-includes/js/admin-bar.min.js +1 -0
  988. data/lib/wp/wp-includes/js/autosave.js +589 -0
  989. data/lib/wp/wp-includes/js/autosave.min.js +1 -0
  990. data/lib/wp/wp-includes/js/backbone.min.js +1 -0
  991. data/lib/wp/wp-includes/js/colorpicker.js +707 -0
  992. data/lib/wp/wp-includes/js/colorpicker.min.js +1 -0
  993. data/lib/wp/wp-includes/js/comment-reply.js +47 -0
  994. data/lib/wp/wp-includes/js/comment-reply.min.js +1 -0
  995. data/lib/wp/wp-includes/js/crop/cropper.css +165 -0
  996. data/lib/wp/wp-includes/js/crop/cropper.js +516 -0
  997. data/lib/wp/wp-includes/js/crop/marqueeHoriz.gif +0 -0
  998. data/lib/wp/wp-includes/js/crop/marqueeVert.gif +0 -0
  999. data/lib/wp/wp-includes/js/customize-base.js +617 -0
  1000. data/lib/wp/wp-includes/js/customize-base.min.js +1 -0
  1001. data/lib/wp/wp-includes/js/customize-loader.js +246 -0
  1002. data/lib/wp/wp-includes/js/customize-loader.min.js +1 -0
  1003. data/lib/wp/wp-includes/js/customize-models.js +247 -0
  1004. data/lib/wp/wp-includes/js/customize-models.min.js +1 -0
  1005. data/lib/wp/wp-includes/js/customize-preview-widgets.js +129 -0
  1006. data/lib/wp/wp-includes/js/customize-preview-widgets.min.js +1 -0
  1007. data/lib/wp/wp-includes/js/customize-preview.js +154 -0
  1008. data/lib/wp/wp-includes/js/customize-preview.min.js +1 -0
  1009. data/lib/wp/wp-includes/js/customize-views.js +231 -0
  1010. data/lib/wp/wp-includes/js/customize-views.min.js +1 -0
  1011. data/lib/wp/wp-includes/js/heartbeat.js +738 -0
  1012. data/lib/wp/wp-includes/js/heartbeat.min.js +1 -0
  1013. data/lib/wp/wp-includes/js/hoverIntent.js +115 -0
  1014. data/lib/wp/wp-includes/js/hoverIntent.min.js +1 -0
  1015. data/lib/wp/wp-includes/js/imgareaselect/border-anim-h.gif +0 -0
  1016. data/lib/wp/wp-includes/js/imgareaselect/border-anim-v.gif +0 -0
  1017. data/lib/wp/wp-includes/js/imgareaselect/imgareaselect.css +41 -0
  1018. data/lib/wp/wp-includes/js/imgareaselect/jquery.imgareaselect.js +1205 -0
  1019. data/lib/wp/wp-includes/js/imgareaselect/jquery.imgareaselect.min.js +1 -0
  1020. data/lib/wp/wp-includes/js/jcrop/Jcrop.gif +0 -0
  1021. data/lib/wp/wp-includes/js/jcrop/jquery.Jcrop.min.css +29 -0
  1022. data/lib/wp/wp-includes/js/jcrop/jquery.Jcrop.min.js +22 -0
  1023. data/lib/wp/wp-includes/js/jquery/jquery-migrate.js +521 -0
  1024. data/lib/wp/wp-includes/js/jquery/jquery-migrate.min.js +2 -0
  1025. data/lib/wp/wp-includes/js/jquery/jquery.color.min.js +2 -0
  1026. data/lib/wp/wp-includes/js/jquery/jquery.form.js +1193 -0
  1027. data/lib/wp/wp-includes/js/jquery/jquery.form.min.js +11 -0
  1028. data/lib/wp/wp-includes/js/jquery/jquery.hotkeys.js +134 -0
  1029. data/lib/wp/wp-includes/js/jquery/jquery.hotkeys.min.js +1 -0
  1030. data/lib/wp/wp-includes/js/jquery/jquery.js +5 -0
  1031. data/lib/wp/wp-includes/js/jquery/jquery.masonry.min.js +11 -0
  1032. data/lib/wp/wp-includes/js/jquery/jquery.query.js +11 -0
  1033. data/lib/wp/wp-includes/js/jquery/jquery.schedule.js +36 -0
  1034. data/lib/wp/wp-includes/js/jquery/jquery.serialize-object.js +31 -0
  1035. data/lib/wp/wp-includes/js/jquery/jquery.table-hotkeys.js +99 -0
  1036. data/lib/wp/wp-includes/js/jquery/jquery.table-hotkeys.min.js +1 -0
  1037. data/lib/wp/wp-includes/js/jquery/jquery.ui.touch-punch.js +11 -0
  1038. data/lib/wp/wp-includes/js/jquery/suggest.js +316 -0
  1039. data/lib/wp/wp-includes/js/jquery/suggest.min.js +1 -0
  1040. data/lib/wp/wp-includes/js/jquery/ui/accordion.min.js +11 -0
  1041. data/lib/wp/wp-includes/js/jquery/ui/autocomplete.min.js +11 -0
  1042. data/lib/wp/wp-includes/js/jquery/ui/button.min.js +11 -0
  1043. data/lib/wp/wp-includes/js/jquery/ui/core.min.js +11 -0
  1044. data/lib/wp/wp-includes/js/jquery/ui/datepicker.min.js +12 -0
  1045. data/lib/wp/wp-includes/js/jquery/ui/dialog.min.js +11 -0
  1046. data/lib/wp/wp-includes/js/jquery/ui/draggable.min.js +11 -0
  1047. data/lib/wp/wp-includes/js/jquery/ui/droppable.min.js +11 -0
  1048. data/lib/wp/wp-includes/js/jquery/ui/effect-blind.min.js +11 -0
  1049. data/lib/wp/wp-includes/js/jquery/ui/effect-bounce.min.js +11 -0
  1050. data/lib/wp/wp-includes/js/jquery/ui/effect-clip.min.js +11 -0
  1051. data/lib/wp/wp-includes/js/jquery/ui/effect-drop.min.js +11 -0
  1052. data/lib/wp/wp-includes/js/jquery/ui/effect-explode.min.js +11 -0
  1053. data/lib/wp/wp-includes/js/jquery/ui/effect-fade.min.js +11 -0
  1054. data/lib/wp/wp-includes/js/jquery/ui/effect-fold.min.js +11 -0
  1055. data/lib/wp/wp-includes/js/jquery/ui/effect-highlight.min.js +11 -0
  1056. data/lib/wp/wp-includes/js/jquery/ui/effect-puff.min.js +11 -0
  1057. data/lib/wp/wp-includes/js/jquery/ui/effect-pulsate.min.js +11 -0
  1058. data/lib/wp/wp-includes/js/jquery/ui/effect-scale.min.js +11 -0
  1059. data/lib/wp/wp-includes/js/jquery/ui/effect-shake.min.js +11 -0
  1060. data/lib/wp/wp-includes/js/jquery/ui/effect-size.min.js +11 -0
  1061. data/lib/wp/wp-includes/js/jquery/ui/effect-slide.min.js +11 -0
  1062. data/lib/wp/wp-includes/js/jquery/ui/effect-transfer.min.js +11 -0
  1063. data/lib/wp/wp-includes/js/jquery/ui/effect.min.js +21 -0
  1064. data/lib/wp/wp-includes/js/jquery/ui/menu.min.js +11 -0
  1065. data/lib/wp/wp-includes/js/jquery/ui/mouse.min.js +11 -0
  1066. data/lib/wp/wp-includes/js/jquery/ui/position.min.js +11 -0
  1067. data/lib/wp/wp-includes/js/jquery/ui/progressbar.min.js +11 -0
  1068. data/lib/wp/wp-includes/js/jquery/ui/resizable.min.js +11 -0
  1069. data/lib/wp/wp-includes/js/jquery/ui/selectable.min.js +11 -0
  1070. data/lib/wp/wp-includes/js/jquery/ui/selectmenu.min.js +11 -0
  1071. data/lib/wp/wp-includes/js/jquery/ui/slider.min.js +11 -0
  1072. data/lib/wp/wp-includes/js/jquery/ui/sortable.min.js +11 -0
  1073. data/lib/wp/wp-includes/js/jquery/ui/spinner.min.js +11 -0
  1074. data/lib/wp/wp-includes/js/jquery/ui/tabs.min.js +11 -0
  1075. data/lib/wp/wp-includes/js/jquery/ui/tooltip.min.js +11 -0
  1076. data/lib/wp/wp-includes/js/jquery/ui/widget.min.js +11 -0
  1077. data/lib/wp/wp-includes/js/json2.js +480 -0
  1078. data/lib/wp/wp-includes/js/json2.min.js +1 -0
  1079. data/lib/wp/wp-includes/js/masonry.min.js +1 -0
  1080. data/lib/wp/wp-includes/js/mce-view.js +829 -0
  1081. data/lib/wp/wp-includes/js/mce-view.min.js +1 -0
  1082. data/lib/wp/wp-includes/js/media-audiovideo.js +831 -0
  1083. data/lib/wp/wp-includes/js/media-audiovideo.min.js +1 -0
  1084. data/lib/wp/wp-includes/js/media-editor.js +1114 -0
  1085. data/lib/wp/wp-includes/js/media-editor.min.js +1 -0
  1086. data/lib/wp/wp-includes/js/media-grid.js +732 -0
  1087. data/lib/wp/wp-includes/js/media-grid.min.js +1 -0
  1088. data/lib/wp/wp-includes/js/media-models.js +1362 -0
  1089. data/lib/wp/wp-includes/js/media-models.min.js +1 -0
  1090. data/lib/wp/wp-includes/js/media-views.js +7484 -0
  1091. data/lib/wp/wp-includes/js/media-views.min.js +3 -0
  1092. data/lib/wp/wp-includes/js/mediaelement/background.png +0 -0
  1093. data/lib/wp/wp-includes/js/mediaelement/bigplay.png +0 -0
  1094. data/lib/wp/wp-includes/js/mediaelement/bigplay.svg +1 -0
  1095. data/lib/wp/wp-includes/js/mediaelement/controls.png +0 -0
  1096. data/lib/wp/wp-includes/js/mediaelement/controls.svg +1 -0
  1097. data/lib/wp/wp-includes/js/mediaelement/flashmediaelement.swf +0 -0
  1098. data/lib/wp/wp-includes/js/mediaelement/loading.gif +0 -0
  1099. data/lib/wp/wp-includes/js/mediaelement/mediaelement-and-player.min.js +181 -0
  1100. data/lib/wp/wp-includes/js/mediaelement/mediaelementplayer.min.css +1 -0
  1101. data/lib/wp/wp-includes/js/mediaelement/silverlightmediaelement.xap +0 -0
  1102. data/lib/wp/wp-includes/js/mediaelement/wp-mediaelement.css +274 -0
  1103. data/lib/wp/wp-includes/js/mediaelement/wp-mediaelement.js +34 -0
  1104. data/lib/wp/wp-includes/js/mediaelement/wp-playlist.js +175 -0
  1105. data/lib/wp/wp-includes/js/plupload/handlers.js +488 -0
  1106. data/lib/wp/wp-includes/js/plupload/handlers.min.js +1 -0
  1107. data/lib/wp/wp-includes/js/plupload/license.txt +339 -0
  1108. data/lib/wp/wp-includes/js/plupload/plupload.flash.swf +0 -0
  1109. data/lib/wp/wp-includes/js/plupload/plupload.full.min.js +28 -0
  1110. data/lib/wp/wp-includes/js/plupload/plupload.silverlight.xap +0 -0
  1111. data/lib/wp/wp-includes/js/plupload/wp-plupload.js +376 -0
  1112. data/lib/wp/wp-includes/js/plupload/wp-plupload.min.js +1 -0
  1113. data/lib/wp/wp-includes/js/quicktags.js +652 -0
  1114. data/lib/wp/wp-includes/js/quicktags.min.js +1 -0
  1115. data/lib/wp/wp-includes/js/shortcode.js +356 -0
  1116. data/lib/wp/wp-includes/js/shortcode.min.js +1 -0
  1117. data/lib/wp/wp-includes/js/swfobject.js +4 -0
  1118. data/lib/wp/wp-includes/js/swfupload/handlers.js +376 -0
  1119. data/lib/wp/wp-includes/js/swfupload/handlers.min.js +1 -0
  1120. data/lib/wp/wp-includes/js/swfupload/license.txt +32 -0
  1121. data/lib/wp/wp-includes/js/swfupload/plugins/swfupload.cookies.js +53 -0
  1122. data/lib/wp/wp-includes/js/swfupload/plugins/swfupload.queue.js +98 -0
  1123. data/lib/wp/wp-includes/js/swfupload/plugins/swfupload.speed.js +342 -0
  1124. data/lib/wp/wp-includes/js/swfupload/plugins/swfupload.swfobject.js +105 -0
  1125. data/lib/wp/wp-includes/js/swfupload/swfupload.js +980 -0
  1126. data/lib/wp/wp-includes/js/swfupload/swfupload.swf +0 -0
  1127. data/lib/wp/wp-includes/js/thickbox/loadingAnimation.gif +0 -0
  1128. data/lib/wp/wp-includes/js/thickbox/macFFBgHack.png +0 -0
  1129. data/lib/wp/wp-includes/js/thickbox/thickbox.css +138 -0
  1130. data/lib/wp/wp-includes/js/thickbox/thickbox.js +314 -0
  1131. data/lib/wp/wp-includes/js/tinymce/langs/wp-langs-en.js +519 -0
  1132. data/lib/wp/wp-includes/js/tinymce/license.txt +504 -0
  1133. data/lib/wp/wp-includes/js/tinymce/plugins/charmap/plugin.js +370 -0
  1134. data/lib/wp/wp-includes/js/tinymce/plugins/charmap/plugin.min.js +1 -0
  1135. data/lib/wp/wp-includes/js/tinymce/plugins/colorpicker/plugin.js +112 -0
  1136. data/lib/wp/wp-includes/js/tinymce/plugins/colorpicker/plugin.min.js +1 -0
  1137. data/lib/wp/wp-includes/js/tinymce/plugins/compat3x/css/dialog.css +212 -0
  1138. data/lib/wp/wp-includes/js/tinymce/plugins/compat3x/plugin.js +304 -0
  1139. data/lib/wp/wp-includes/js/tinymce/plugins/compat3x/plugin.min.js +1 -0
  1140. data/lib/wp/wp-includes/js/tinymce/plugins/directionality/plugin.js +64 -0
  1141. data/lib/wp/wp-includes/js/tinymce/plugins/directionality/plugin.min.js +1 -0
  1142. data/lib/wp/wp-includes/js/tinymce/plugins/fullscreen/plugin.js +136 -0
  1143. data/lib/wp/wp-includes/js/tinymce/plugins/fullscreen/plugin.min.js +1 -0
  1144. data/lib/wp/wp-includes/js/tinymce/plugins/hr/plugin.js +30 -0
  1145. data/lib/wp/wp-includes/js/tinymce/plugins/hr/plugin.min.js +1 -0
  1146. data/lib/wp/wp-includes/js/tinymce/plugins/image/plugin.js +450 -0
  1147. data/lib/wp/wp-includes/js/tinymce/plugins/image/plugin.min.js +1 -0
  1148. data/lib/wp/wp-includes/js/tinymce/plugins/lists/plugin.js +786 -0
  1149. data/lib/wp/wp-includes/js/tinymce/plugins/lists/plugin.min.js +1 -0
  1150. data/lib/wp/wp-includes/js/tinymce/plugins/media/moxieplayer.swf +0 -0
  1151. data/lib/wp/wp-includes/js/tinymce/plugins/media/plugin.js +774 -0
  1152. data/lib/wp/wp-includes/js/tinymce/plugins/media/plugin.min.js +1 -0
  1153. data/lib/wp/wp-includes/js/tinymce/plugins/paste/plugin.js +1553 -0
  1154. data/lib/wp/wp-includes/js/tinymce/plugins/paste/plugin.min.js +1 -0
  1155. data/lib/wp/wp-includes/js/tinymce/plugins/tabfocus/plugin.js +125 -0
  1156. data/lib/wp/wp-includes/js/tinymce/plugins/tabfocus/plugin.min.js +1 -0
  1157. data/lib/wp/wp-includes/js/tinymce/plugins/textcolor/plugin.js +272 -0
  1158. data/lib/wp/wp-includes/js/tinymce/plugins/textcolor/plugin.min.js +1 -0
  1159. data/lib/wp/wp-includes/js/tinymce/plugins/wordpress/plugin.js +513 -0
  1160. data/lib/wp/wp-includes/js/tinymce/plugins/wordpress/plugin.min.js +1 -0
  1161. data/lib/wp/wp-includes/js/tinymce/plugins/wpautoresize/plugin.js +207 -0
  1162. data/lib/wp/wp-includes/js/tinymce/plugins/wpautoresize/plugin.min.js +1 -0
  1163. data/lib/wp/wp-includes/js/tinymce/plugins/wpdialogs/plugin.js +92 -0
  1164. data/lib/wp/wp-includes/js/tinymce/plugins/wpdialogs/plugin.min.js +1 -0
  1165. data/lib/wp/wp-includes/js/tinymce/plugins/wpeditimage/plugin.js +1035 -0
  1166. data/lib/wp/wp-includes/js/tinymce/plugins/wpeditimage/plugin.min.js +1 -0
  1167. data/lib/wp/wp-includes/js/tinymce/plugins/wpfullscreen/plugin.js +78 -0
  1168. data/lib/wp/wp-includes/js/tinymce/plugins/wpfullscreen/plugin.min.js +1 -0
  1169. data/lib/wp/wp-includes/js/tinymce/plugins/wpgallery/plugin.js +130 -0
  1170. data/lib/wp/wp-includes/js/tinymce/plugins/wpgallery/plugin.min.js +1 -0
  1171. data/lib/wp/wp-includes/js/tinymce/plugins/wplink/plugin.js +63 -0
  1172. data/lib/wp/wp-includes/js/tinymce/plugins/wplink/plugin.min.js +1 -0
  1173. data/lib/wp/wp-includes/js/tinymce/plugins/wpview/plugin.js +694 -0
  1174. data/lib/wp/wp-includes/js/tinymce/plugins/wpview/plugin.min.js +1 -0
  1175. data/lib/wp/wp-includes/js/tinymce/skins/lightgray/content.inline.min.css +1 -0
  1176. data/lib/wp/wp-includes/js/tinymce/skins/lightgray/content.min.css +1 -0
  1177. data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/readme.md +1 -0
  1178. data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce-small.eot +0 -0
  1179. data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce-small.svg +62 -0
  1180. data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce-small.ttf +0 -0
  1181. data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce-small.woff +0 -0
  1182. data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce.eot +0 -0
  1183. data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce.svg +63 -0
  1184. data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce.ttf +0 -0
  1185. data/lib/wp/wp-includes/js/tinymce/skins/lightgray/fonts/tinymce.woff +0 -0
  1186. data/lib/wp/wp-includes/js/tinymce/skins/lightgray/img/anchor.gif +0 -0
  1187. data/lib/wp/wp-includes/js/tinymce/skins/lightgray/img/loader.gif +0 -0
  1188. data/lib/wp/wp-includes/js/tinymce/skins/lightgray/img/object.gif +0 -0
  1189. data/lib/wp/wp-includes/js/tinymce/skins/lightgray/img/trans.gif +0 -0
  1190. data/lib/wp/wp-includes/js/tinymce/skins/lightgray/skin.ie7.min.css +1 -0
  1191. data/lib/wp/wp-includes/js/tinymce/skins/lightgray/skin.min.css +1 -0
  1192. data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/audio.png +0 -0
  1193. data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/dashicon-edit.png +0 -0
  1194. data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/dashicon-no-alt.png +0 -0
  1195. data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/embedded.png +0 -0
  1196. data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/gallery-2x.png +0 -0
  1197. data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/gallery.png +0 -0
  1198. data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/more-2x.png +0 -0
  1199. data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/more.png +0 -0
  1200. data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/pagebreak-2x.png +0 -0
  1201. data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/pagebreak.png +0 -0
  1202. data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/playlist-audio.png +0 -0
  1203. data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/playlist-video.png +0 -0
  1204. data/lib/wp/wp-includes/js/tinymce/skins/wordpress/images/video.png +0 -0
  1205. data/lib/wp/wp-includes/js/tinymce/skins/wordpress/wp-content.css +618 -0
  1206. data/lib/wp/wp-includes/js/tinymce/themes/modern/theme.js +617 -0
  1207. data/lib/wp/wp-includes/js/tinymce/themes/modern/theme.min.js +1 -0
  1208. data/lib/wp/wp-includes/js/tinymce/tiny_mce_popup.js +539 -0
  1209. data/lib/wp/wp-includes/js/tinymce/tinymce.min.js +11 -0
  1210. data/lib/wp/wp-includes/js/tinymce/utils/editable_selects.js +70 -0
  1211. data/lib/wp/wp-includes/js/tinymce/utils/form_utils.js +210 -0
  1212. data/lib/wp/wp-includes/js/tinymce/utils/mctabs.js +164 -0
  1213. data/lib/wp/wp-includes/js/tinymce/utils/validate.js +252 -0
  1214. data/lib/wp/wp-includes/js/tinymce/wp-mce-help.php +145 -0
  1215. data/lib/wp/wp-includes/js/tinymce/wp-tinymce.js.gz +0 -0
  1216. data/lib/wp/wp-includes/js/tinymce/wp-tinymce.php +39 -0
  1217. data/lib/wp/wp-includes/js/tw-sack.js +193 -0
  1218. data/lib/wp/wp-includes/js/tw-sack.min.js +1 -0
  1219. data/lib/wp/wp-includes/js/underscore.min.js +1 -0
  1220. data/lib/wp/wp-includes/js/utils.js +197 -0
  1221. data/lib/wp/wp-includes/js/utils.min.js +1 -0
  1222. data/lib/wp/wp-includes/js/wp-ajax-response.js +64 -0
  1223. data/lib/wp/wp-includes/js/wp-ajax-response.min.js +1 -0
  1224. data/lib/wp/wp-includes/js/wp-auth-check.js +112 -0
  1225. data/lib/wp/wp-includes/js/wp-auth-check.min.js +1 -0
  1226. data/lib/wp/wp-includes/js/wp-backbone.js +386 -0
  1227. data/lib/wp/wp-includes/js/wp-backbone.min.js +1 -0
  1228. data/lib/wp/wp-includes/js/wp-list-revisions.js +24 -0
  1229. data/lib/wp/wp-includes/js/wp-list-revisions.min.js +1 -0
  1230. data/lib/wp/wp-includes/js/wp-lists.js +469 -0
  1231. data/lib/wp/wp-includes/js/wp-lists.min.js +1 -0
  1232. data/lib/wp/wp-includes/js/wp-pointer.js +282 -0
  1233. data/lib/wp/wp-includes/js/wp-pointer.min.js +1 -0
  1234. data/lib/wp/wp-includes/js/wp-util.js +106 -0
  1235. data/lib/wp/wp-includes/js/wp-util.min.js +1 -0
  1236. data/lib/wp/wp-includes/js/wpdialog.js +19 -0
  1237. data/lib/wp/wp-includes/js/wpdialog.min.js +1 -0
  1238. data/lib/wp/wp-includes/js/wplink.js +615 -0
  1239. data/lib/wp/wp-includes/js/wplink.min.js +1 -0
  1240. data/lib/wp/wp-includes/js/zxcvbn-async.js +18 -0
  1241. data/lib/wp/wp-includes/js/zxcvbn-async.min.js +1 -0
  1242. data/lib/wp/wp-includes/js/zxcvbn.min.js +47 -0
  1243. data/lib/wp/wp-includes/kses.php +1526 -0
  1244. data/lib/wp/wp-includes/l10n.php +908 -0
  1245. data/lib/wp/wp-includes/link-template.php +3141 -0
  1246. data/lib/wp/wp-includes/load.php +828 -0
  1247. data/lib/wp/wp-includes/locale.php +368 -0
  1248. data/lib/wp/wp-includes/media-template.php +1235 -0
  1249. data/lib/wp/wp-includes/media.php +3329 -0
  1250. data/lib/wp/wp-includes/meta.php +1221 -0
  1251. data/lib/wp/wp-includes/ms-blogs.php +939 -0
  1252. data/lib/wp/wp-includes/ms-default-constants.php +153 -0
  1253. data/lib/wp/wp-includes/ms-default-filters.php +82 -0
  1254. data/lib/wp/wp-includes/ms-deprecated.php +347 -0
  1255. data/lib/wp/wp-includes/ms-files.php +82 -0
  1256. data/lib/wp/wp-includes/ms-functions.php +2476 -0
  1257. data/lib/wp/wp-includes/ms-load.php +458 -0
  1258. data/lib/wp/wp-includes/ms-settings.php +213 -0
  1259. data/lib/wp/wp-includes/nav-menu-template.php +678 -0
  1260. data/lib/wp/wp-includes/nav-menu.php +895 -0
  1261. data/lib/wp/wp-includes/option.php +1440 -0
  1262. data/lib/wp/wp-includes/pluggable-deprecated.php +192 -0
  1263. data/lib/wp/wp-includes/pluggable.php +2283 -0
  1264. data/lib/wp/wp-includes/plugin.php +920 -0
  1265. data/lib/wp/wp-includes/pomo/entry.php +78 -0
  1266. data/lib/wp/wp-includes/pomo/mo.php +262 -0
  1267. data/lib/wp/wp-includes/pomo/po.php +384 -0
  1268. data/lib/wp/wp-includes/pomo/streams.php +209 -0
  1269. data/lib/wp/wp-includes/pomo/translations.php +275 -0
  1270. data/lib/wp/wp-includes/post-formats.php +243 -0
  1271. data/lib/wp/wp-includes/post-template.php +1766 -0
  1272. data/lib/wp/wp-includes/post-thumbnail-template.php +142 -0
  1273. data/lib/wp/wp-includes/post.php +5842 -0
  1274. data/lib/wp/wp-includes/query.php +4666 -0
  1275. data/lib/wp/wp-includes/registration-functions.php +7 -0
  1276. data/lib/wp/wp-includes/registration.php +7 -0
  1277. data/lib/wp/wp-includes/revision.php +657 -0
  1278. data/lib/wp/wp-includes/rewrite.php +2180 -0
  1279. data/lib/wp/wp-includes/rss-functions.php +9 -0
  1280. data/lib/wp/wp-includes/rss.php +936 -0
  1281. data/lib/wp/wp-includes/script-loader.php +1045 -0
  1282. data/lib/wp/wp-includes/session.php +430 -0
  1283. data/lib/wp/wp-includes/shortcodes.php +410 -0
  1284. data/lib/wp/wp-includes/taxonomy.php +4006 -0
  1285. data/lib/wp/wp-includes/template-loader.php +76 -0
  1286. data/lib/wp/wp-includes/template.php +505 -0
  1287. data/lib/wp/wp-includes/theme-compat/comments-popup.php +128 -0
  1288. data/lib/wp/wp-includes/theme-compat/comments.php +101 -0
  1289. data/lib/wp/wp-includes/theme-compat/footer.php +30 -0
  1290. data/lib/wp/wp-includes/theme-compat/header.php +49 -0
  1291. data/lib/wp/wp-includes/theme-compat/sidebar.php +83 -0
  1292. data/lib/wp/wp-includes/theme.php +2014 -0
  1293. data/lib/wp/wp-includes/update.php +674 -0
  1294. data/lib/wp/wp-includes/user.php +2292 -0
  1295. data/lib/wp/wp-includes/vars.php +144 -0
  1296. data/lib/wp/wp-includes/version.php +35 -0
  1297. data/lib/wp/wp-includes/widgets.php +1514 -0
  1298. data/lib/wp/wp-includes/wlwmanifest.xml +43 -0
  1299. data/lib/wp/wp-includes/wp-db.php +2190 -0
  1300. data/lib/wp/wp-includes/wp-diff.php +523 -0
  1301. data/lib/wp/wp-links-opml.php +80 -0
  1302. data/lib/wp/wp-load.php +73 -0
  1303. data/lib/wp/wp-login.php +952 -0
  1304. data/lib/wp/wp-mail.php +260 -0
  1305. data/lib/wp/wp-settings.php +374 -0
  1306. data/lib/wp/wp-signup.php +749 -0
  1307. data/lib/wp/wp-trackback.php +127 -0
  1308. data/lib/wp/xmlrpc.php +101 -0
  1309. data/stump-cli.gemspec +26 -0
  1310. metadata +1332 -4
@@ -0,0 +1,1661 @@
1
+ <?php
2
+ /**
3
+ * WordPress Post Administration API.
4
+ *
5
+ * @package WordPress
6
+ * @subpackage Administration
7
+ */
8
+
9
+ /**
10
+ * Rename $_POST data from form names to DB post columns.
11
+ *
12
+ * Manipulates $_POST directly.
13
+ *
14
+ * @package WordPress
15
+ * @since 2.6.0
16
+ *
17
+ * @param bool $update Are we updating a pre-existing post?
18
+ * @param array $post_data Array of post data. Defaults to the contents of $_POST.
19
+ * @return object|bool WP_Error on failure, true on success.
20
+ */
21
+ function _wp_translate_postdata( $update = false, $post_data = null ) {
22
+
23
+ if ( empty($post_data) )
24
+ $post_data = &$_POST;
25
+
26
+ if ( $update )
27
+ $post_data['ID'] = (int) $post_data['post_ID'];
28
+
29
+ $ptype = get_post_type_object( $post_data['post_type'] );
30
+
31
+ if ( $update && ! current_user_can( 'edit_post', $post_data['ID'] ) ) {
32
+ if ( 'page' == $post_data['post_type'] )
33
+ return new WP_Error( 'edit_others_pages', __( 'You are not allowed to edit pages as this user.' ) );
34
+ else
35
+ return new WP_Error( 'edit_others_posts', __( 'You are not allowed to edit posts as this user.' ) );
36
+ } elseif ( ! $update && ! current_user_can( $ptype->cap->create_posts ) ) {
37
+ if ( 'page' == $post_data['post_type'] )
38
+ return new WP_Error( 'edit_others_pages', __( 'You are not allowed to create pages as this user.' ) );
39
+ else
40
+ return new WP_Error( 'edit_others_posts', __( 'You are not allowed to create posts as this user.' ) );
41
+ }
42
+
43
+ if ( isset( $post_data['content'] ) )
44
+ $post_data['post_content'] = $post_data['content'];
45
+
46
+ if ( isset( $post_data['excerpt'] ) )
47
+ $post_data['post_excerpt'] = $post_data['excerpt'];
48
+
49
+ if ( isset( $post_data['parent_id'] ) )
50
+ $post_data['post_parent'] = (int) $post_data['parent_id'];
51
+
52
+ if ( isset($post_data['trackback_url']) )
53
+ $post_data['to_ping'] = $post_data['trackback_url'];
54
+
55
+ $post_data['user_ID'] = get_current_user_id();
56
+
57
+ if (!empty ( $post_data['post_author_override'] ) ) {
58
+ $post_data['post_author'] = (int) $post_data['post_author_override'];
59
+ } else {
60
+ if (!empty ( $post_data['post_author'] ) ) {
61
+ $post_data['post_author'] = (int) $post_data['post_author'];
62
+ } else {
63
+ $post_data['post_author'] = (int) $post_data['user_ID'];
64
+ }
65
+ }
66
+
67
+ if ( isset( $post_data['user_ID'] ) && ( $post_data['post_author'] != $post_data['user_ID'] )
68
+ && ! current_user_can( $ptype->cap->edit_others_posts ) ) {
69
+ if ( $update ) {
70
+ if ( 'page' == $post_data['post_type'] )
71
+ return new WP_Error( 'edit_others_pages', __( 'You are not allowed to edit pages as this user.' ) );
72
+ else
73
+ return new WP_Error( 'edit_others_posts', __( 'You are not allowed to edit posts as this user.' ) );
74
+ } else {
75
+ if ( 'page' == $post_data['post_type'] )
76
+ return new WP_Error( 'edit_others_pages', __( 'You are not allowed to create pages as this user.' ) );
77
+ else
78
+ return new WP_Error( 'edit_others_posts', __( 'You are not allowed to create posts as this user.' ) );
79
+ }
80
+ }
81
+
82
+ if ( ! empty( $post_data['post_status'] ) ) {
83
+ $post_data['post_status'] = sanitize_key( $post_data['post_status'] );
84
+
85
+ // No longer an auto-draft
86
+ if ( 'auto-draft' === $post_data['post_status'] ) {
87
+ $post_data['post_status'] = 'draft';
88
+ }
89
+
90
+ if ( ! get_post_status_object( $post_data['post_status'] ) ) {
91
+ unset( $post_data['post_status'] );
92
+ }
93
+ }
94
+
95
+ // What to do based on which button they pressed
96
+ if ( isset($post_data['saveasdraft']) && '' != $post_data['saveasdraft'] )
97
+ $post_data['post_status'] = 'draft';
98
+ if ( isset($post_data['saveasprivate']) && '' != $post_data['saveasprivate'] )
99
+ $post_data['post_status'] = 'private';
100
+ if ( isset($post_data['publish']) && ( '' != $post_data['publish'] ) && ( !isset($post_data['post_status']) || $post_data['post_status'] != 'private' ) )
101
+ $post_data['post_status'] = 'publish';
102
+ if ( isset($post_data['advanced']) && '' != $post_data['advanced'] )
103
+ $post_data['post_status'] = 'draft';
104
+ if ( isset($post_data['pending']) && '' != $post_data['pending'] )
105
+ $post_data['post_status'] = 'pending';
106
+
107
+ if ( isset( $post_data['ID'] ) )
108
+ $post_id = $post_data['ID'];
109
+ else
110
+ $post_id = false;
111
+ $previous_status = $post_id ? get_post_field( 'post_status', $post_id ) : false;
112
+
113
+ if ( isset( $post_data['post_status'] ) && 'private' == $post_data['post_status'] && ! current_user_can( $ptype->cap->publish_posts ) ) {
114
+ $post_data['post_status'] = $previous_status ? $previous_status : 'pending';
115
+ }
116
+
117
+ $published_statuses = array( 'publish', 'future' );
118
+
119
+ // Posts 'submitted for approval' present are submitted to $_POST the same as if they were being published.
120
+ // Change status from 'publish' to 'pending' if user lacks permissions to publish or to resave published posts.
121
+ if ( isset($post_data['post_status']) && (in_array( $post_data['post_status'], $published_statuses ) && !current_user_can( $ptype->cap->publish_posts )) )
122
+ if ( ! in_array( $previous_status, $published_statuses ) || !current_user_can( 'edit_post', $post_id ) )
123
+ $post_data['post_status'] = 'pending';
124
+
125
+ if ( ! isset( $post_data['post_status'] ) ) {
126
+ $post_data['post_status'] = 'auto-draft' === $previous_status ? 'draft' : $previous_status;
127
+ }
128
+
129
+ if ( isset( $post_data['post_password'] ) && ! current_user_can( $ptype->cap->publish_posts ) ) {
130
+ unset( $post_data['post_password'] );
131
+ }
132
+
133
+ if (!isset( $post_data['comment_status'] ))
134
+ $post_data['comment_status'] = 'closed';
135
+
136
+ if (!isset( $post_data['ping_status'] ))
137
+ $post_data['ping_status'] = 'closed';
138
+
139
+ foreach ( array('aa', 'mm', 'jj', 'hh', 'mn') as $timeunit ) {
140
+ if ( !empty( $post_data['hidden_' . $timeunit] ) && $post_data['hidden_' . $timeunit] != $post_data[$timeunit] ) {
141
+ $post_data['edit_date'] = '1';
142
+ break;
143
+ }
144
+ }
145
+
146
+ if ( !empty( $post_data['edit_date'] ) ) {
147
+ $aa = $post_data['aa'];
148
+ $mm = $post_data['mm'];
149
+ $jj = $post_data['jj'];
150
+ $hh = $post_data['hh'];
151
+ $mn = $post_data['mn'];
152
+ $ss = $post_data['ss'];
153
+ $aa = ($aa <= 0 ) ? date('Y') : $aa;
154
+ $mm = ($mm <= 0 ) ? date('n') : $mm;
155
+ $jj = ($jj > 31 ) ? 31 : $jj;
156
+ $jj = ($jj <= 0 ) ? date('j') : $jj;
157
+ $hh = ($hh > 23 ) ? $hh -24 : $hh;
158
+ $mn = ($mn > 59 ) ? $mn -60 : $mn;
159
+ $ss = ($ss > 59 ) ? $ss -60 : $ss;
160
+ $post_data['post_date'] = sprintf( "%04d-%02d-%02d %02d:%02d:%02d", $aa, $mm, $jj, $hh, $mn, $ss );
161
+ $valid_date = wp_checkdate( $mm, $jj, $aa, $post_data['post_date'] );
162
+ if ( !$valid_date ) {
163
+ return new WP_Error( 'invalid_date', __( 'Whoops, the provided date is invalid.' ) );
164
+ }
165
+ $post_data['post_date_gmt'] = get_gmt_from_date( $post_data['post_date'] );
166
+ }
167
+
168
+ return $post_data;
169
+ }
170
+
171
+ /**
172
+ * Update an existing post with values provided in $_POST.
173
+ *
174
+ * @since 1.5.0
175
+ *
176
+ * @param array $post_data Optional.
177
+ * @return int Post ID.
178
+ */
179
+ function edit_post( $post_data = null ) {
180
+
181
+ if ( empty($post_data) )
182
+ $post_data = &$_POST;
183
+
184
+ // Clear out any data in internal vars.
185
+ unset( $post_data['filter'] );
186
+
187
+ $post_ID = (int) $post_data['post_ID'];
188
+ $post = get_post( $post_ID );
189
+ $post_data['post_type'] = $post->post_type;
190
+ $post_data['post_mime_type'] = $post->post_mime_type;
191
+
192
+ if ( ! empty( $post_data['post_status'] ) ) {
193
+ $post_data['post_status'] = sanitize_key( $post_data['post_status'] );
194
+
195
+ if ( 'inherit' == $post_data['post_status'] ) {
196
+ unset( $post_data['post_status'] );
197
+ }
198
+ }
199
+
200
+ $ptype = get_post_type_object($post_data['post_type']);
201
+ if ( !current_user_can( 'edit_post', $post_ID ) ) {
202
+ if ( 'page' == $post_data['post_type'] )
203
+ wp_die( __('You are not allowed to edit this page.' ));
204
+ else
205
+ wp_die( __('You are not allowed to edit this post.' ));
206
+ }
207
+
208
+ if ( post_type_supports( $ptype->name, 'revisions' ) ) {
209
+ $revisions = wp_get_post_revisions( $post_ID, array( 'order' => 'ASC', 'posts_per_page' => 1 ) );
210
+ $revision = current( $revisions );
211
+
212
+ // Check if the revisions have been upgraded
213
+ if ( $revisions && _wp_get_post_revision_version( $revision ) < 1 )
214
+ _wp_upgrade_revisions_of_post( $post, wp_get_post_revisions( $post_ID ) );
215
+ }
216
+
217
+ if ( isset($post_data['visibility']) ) {
218
+ switch ( $post_data['visibility'] ) {
219
+ case 'public' :
220
+ $post_data['post_password'] = '';
221
+ break;
222
+ case 'password' :
223
+ unset( $post_data['sticky'] );
224
+ break;
225
+ case 'private' :
226
+ $post_data['post_status'] = 'private';
227
+ $post_data['post_password'] = '';
228
+ unset( $post_data['sticky'] );
229
+ break;
230
+ }
231
+ }
232
+
233
+ $post_data = _wp_translate_postdata( true, $post_data );
234
+ if ( is_wp_error($post_data) )
235
+ wp_die( $post_data->get_error_message() );
236
+
237
+ // Post Formats
238
+ if ( isset( $post_data['post_format'] ) )
239
+ set_post_format( $post_ID, $post_data['post_format'] );
240
+
241
+ $format_meta_urls = array( 'url', 'link_url', 'quote_source_url' );
242
+ foreach ( $format_meta_urls as $format_meta_url ) {
243
+ $keyed = '_format_' . $format_meta_url;
244
+ if ( isset( $post_data[ $keyed ] ) )
245
+ update_post_meta( $post_ID, $keyed, wp_slash( esc_url_raw( wp_unslash( $post_data[ $keyed ] ) ) ) );
246
+ }
247
+
248
+ $format_keys = array( 'quote', 'quote_source_name', 'image', 'gallery', 'audio_embed', 'video_embed' );
249
+
250
+ foreach ( $format_keys as $key ) {
251
+ $keyed = '_format_' . $key;
252
+ if ( isset( $post_data[ $keyed ] ) ) {
253
+ if ( current_user_can( 'unfiltered_html' ) )
254
+ update_post_meta( $post_ID, $keyed, $post_data[ $keyed ] );
255
+ else
256
+ update_post_meta( $post_ID, $keyed, wp_filter_post_kses( $post_data[ $keyed ] ) );
257
+ }
258
+ }
259
+
260
+ if ( 'attachment' === $post_data['post_type'] && preg_match( '#^(audio|video)/#', $post_data['post_mime_type'] ) ) {
261
+ $id3data = wp_get_attachment_metadata( $post_ID );
262
+ if ( ! is_array( $id3data ) ) {
263
+ $id3data = array();
264
+ }
265
+
266
+ foreach ( wp_get_attachment_id3_keys( $post, 'edit' ) as $key => $label ) {
267
+ if ( isset( $post_data[ 'id3_' . $key ] ) ) {
268
+ $id3data[ $key ] = sanitize_text_field( wp_unslash( $post_data[ 'id3_' . $key ] ) );
269
+ }
270
+ }
271
+ wp_update_attachment_metadata( $post_ID, $id3data );
272
+ }
273
+
274
+ // Meta Stuff
275
+ if ( isset($post_data['meta']) && $post_data['meta'] ) {
276
+ foreach ( $post_data['meta'] as $key => $value ) {
277
+ if ( !$meta = get_post_meta_by_id( $key ) )
278
+ continue;
279
+ if ( $meta->post_id != $post_ID )
280
+ continue;
281
+ if ( is_protected_meta( $value['key'], 'post' ) || ! current_user_can( 'edit_post_meta', $post_ID, $value['key'] ) )
282
+ continue;
283
+ update_meta( $key, $value['key'], $value['value'] );
284
+ }
285
+ }
286
+
287
+ if ( isset($post_data['deletemeta']) && $post_data['deletemeta'] ) {
288
+ foreach ( $post_data['deletemeta'] as $key => $value ) {
289
+ if ( !$meta = get_post_meta_by_id( $key ) )
290
+ continue;
291
+ if ( $meta->post_id != $post_ID )
292
+ continue;
293
+ if ( is_protected_meta( $meta->meta_key, 'post' ) || ! current_user_can( 'delete_post_meta', $post_ID, $meta->meta_key ) )
294
+ continue;
295
+ delete_meta( $key );
296
+ }
297
+ }
298
+
299
+ // Attachment stuff
300
+ if ( 'attachment' == $post_data['post_type'] ) {
301
+ if ( isset( $post_data[ '_wp_attachment_image_alt' ] ) ) {
302
+ $image_alt = wp_unslash( $post_data['_wp_attachment_image_alt'] );
303
+ if ( $image_alt != get_post_meta( $post_ID, '_wp_attachment_image_alt', true ) ) {
304
+ $image_alt = wp_strip_all_tags( $image_alt, true );
305
+ // update_meta expects slashed.
306
+ update_post_meta( $post_ID, '_wp_attachment_image_alt', wp_slash( $image_alt ) );
307
+ }
308
+ }
309
+
310
+ $attachment_data = isset( $post_data['attachments'][ $post_ID ] ) ? $post_data['attachments'][ $post_ID ] : array();
311
+
312
+ /** This filter is documented in wp-admin/includes/media.php */
313
+ $post_data = apply_filters( 'attachment_fields_to_save', $post_data, $attachment_data );
314
+ }
315
+
316
+ add_meta( $post_ID );
317
+
318
+ update_post_meta( $post_ID, '_edit_last', get_current_user_id() );
319
+
320
+ wp_update_post( $post_data );
321
+
322
+ // Now that we have an ID we can fix any attachment anchor hrefs
323
+ _fix_attachment_links( $post_ID );
324
+
325
+ wp_set_post_lock( $post_ID );
326
+
327
+ if ( current_user_can( $ptype->cap->edit_others_posts ) ) {
328
+ if ( ! empty( $post_data['sticky'] ) )
329
+ stick_post( $post_ID );
330
+ else
331
+ unstick_post( $post_ID );
332
+ }
333
+
334
+ return $post_ID;
335
+ }
336
+
337
+ /**
338
+ * Process the post data for the bulk editing of posts.
339
+ *
340
+ * Updates all bulk edited posts/pages, adding (but not removing) tags and
341
+ * categories. Skips pages when they would be their own parent or child.
342
+ *
343
+ * @since 2.7.0
344
+ *
345
+ * @param array $post_data Optional, the array of post data to process if not provided will use $_POST superglobal.
346
+ * @return array
347
+ */
348
+ function bulk_edit_posts( $post_data = null ) {
349
+ global $wpdb;
350
+
351
+ if ( empty($post_data) )
352
+ $post_data = &$_POST;
353
+
354
+ if ( isset($post_data['post_type']) )
355
+ $ptype = get_post_type_object($post_data['post_type']);
356
+ else
357
+ $ptype = get_post_type_object('post');
358
+
359
+ if ( !current_user_can( $ptype->cap->edit_posts ) ) {
360
+ if ( 'page' == $ptype->name )
361
+ wp_die( __('You are not allowed to edit pages.'));
362
+ else
363
+ wp_die( __('You are not allowed to edit posts.'));
364
+ }
365
+
366
+ if ( -1 == $post_data['_status'] ) {
367
+ $post_data['post_status'] = null;
368
+ unset($post_data['post_status']);
369
+ } else {
370
+ $post_data['post_status'] = $post_data['_status'];
371
+ }
372
+ unset($post_data['_status']);
373
+
374
+ if ( ! empty( $post_data['post_status'] ) ) {
375
+ $post_data['post_status'] = sanitize_key( $post_data['post_status'] );
376
+
377
+ if ( 'inherit' == $post_data['post_status'] ) {
378
+ unset( $post_data['post_status'] );
379
+ }
380
+ }
381
+
382
+ $post_IDs = array_map( 'intval', (array) $post_data['post'] );
383
+
384
+ $reset = array(
385
+ 'post_author', 'post_status', 'post_password',
386
+ 'post_parent', 'page_template', 'comment_status',
387
+ 'ping_status', 'keep_private', 'tax_input',
388
+ 'post_category', 'sticky', 'post_format',
389
+ );
390
+
391
+ foreach ( $reset as $field ) {
392
+ if ( isset($post_data[$field]) && ( '' == $post_data[$field] || -1 == $post_data[$field] ) )
393
+ unset($post_data[$field]);
394
+ }
395
+
396
+ if ( isset($post_data['post_category']) ) {
397
+ if ( is_array($post_data['post_category']) && ! empty($post_data['post_category']) )
398
+ $new_cats = array_map( 'absint', $post_data['post_category'] );
399
+ else
400
+ unset($post_data['post_category']);
401
+ }
402
+
403
+ $tax_input = array();
404
+ if ( isset($post_data['tax_input'])) {
405
+ foreach ( $post_data['tax_input'] as $tax_name => $terms ) {
406
+ if ( empty($terms) )
407
+ continue;
408
+ if ( is_taxonomy_hierarchical( $tax_name ) ) {
409
+ $tax_input[ $tax_name ] = array_map( 'absint', $terms );
410
+ } else {
411
+ $comma = _x( ',', 'tag delimiter' );
412
+ if ( ',' !== $comma )
413
+ $terms = str_replace( $comma, ',', $terms );
414
+ $tax_input[ $tax_name ] = explode( ',', trim( $terms, " \n\t\r\0\x0B," ) );
415
+ }
416
+ }
417
+ }
418
+
419
+ if ( isset($post_data['post_parent']) && ($parent = (int) $post_data['post_parent']) ) {
420
+ $pages = $wpdb->get_results("SELECT ID, post_parent FROM $wpdb->posts WHERE post_type = 'page'");
421
+ $children = array();
422
+
423
+ for ( $i = 0; $i < 50 && $parent > 0; $i++ ) {
424
+ $children[] = $parent;
425
+
426
+ foreach ( $pages as $page ) {
427
+ if ( $page->ID == $parent ) {
428
+ $parent = $page->post_parent;
429
+ break;
430
+ }
431
+ }
432
+ }
433
+ }
434
+
435
+ $updated = $skipped = $locked = array();
436
+ $shared_post_data = $post_data;
437
+
438
+ foreach ( $post_IDs as $post_ID ) {
439
+ // Start with fresh post data with each iteration.
440
+ $post_data = $shared_post_data;
441
+
442
+ $post_type_object = get_post_type_object( get_post_type( $post_ID ) );
443
+
444
+ if ( !isset( $post_type_object ) || ( isset($children) && in_array($post_ID, $children) ) || !current_user_can( 'edit_post', $post_ID ) ) {
445
+ $skipped[] = $post_ID;
446
+ continue;
447
+ }
448
+
449
+ if ( wp_check_post_lock( $post_ID ) ) {
450
+ $locked[] = $post_ID;
451
+ continue;
452
+ }
453
+
454
+ $post = get_post( $post_ID );
455
+ $tax_names = get_object_taxonomies( $post );
456
+ foreach ( $tax_names as $tax_name ) {
457
+ $taxonomy_obj = get_taxonomy($tax_name);
458
+ if ( isset( $tax_input[$tax_name]) && current_user_can( $taxonomy_obj->cap->assign_terms ) )
459
+ $new_terms = $tax_input[$tax_name];
460
+ else
461
+ $new_terms = array();
462
+
463
+ if ( $taxonomy_obj->hierarchical )
464
+ $current_terms = (array) wp_get_object_terms( $post_ID, $tax_name, array('fields' => 'ids') );
465
+ else
466
+ $current_terms = (array) wp_get_object_terms( $post_ID, $tax_name, array('fields' => 'names') );
467
+
468
+ $post_data['tax_input'][$tax_name] = array_merge( $current_terms, $new_terms );
469
+ }
470
+
471
+ if ( isset($new_cats) && in_array( 'category', $tax_names ) ) {
472
+ $cats = (array) wp_get_post_categories($post_ID);
473
+ $post_data['post_category'] = array_unique( array_merge($cats, $new_cats) );
474
+ unset( $post_data['tax_input']['category'] );
475
+ }
476
+
477
+ $post_data['post_type'] = $post->post_type;
478
+ $post_data['post_mime_type'] = $post->post_mime_type;
479
+ $post_data['guid'] = $post->guid;
480
+
481
+ foreach ( array( 'comment_status', 'ping_status', 'post_author' ) as $field ) {
482
+ if ( ! isset( $post_data[ $field ] ) ) {
483
+ $post_data[ $field ] = $post->$field;
484
+ }
485
+ }
486
+
487
+ $post_data['ID'] = $post_ID;
488
+ $post_data['post_ID'] = $post_ID;
489
+
490
+ $post_data = _wp_translate_postdata( true, $post_data );
491
+ if ( is_wp_error( $post_data ) ) {
492
+ $skipped[] = $post_ID;
493
+ continue;
494
+ }
495
+
496
+ $updated[] = wp_update_post( $post_data );
497
+
498
+ if ( isset( $post_data['sticky'] ) && current_user_can( $ptype->cap->edit_others_posts ) ) {
499
+ if ( 'sticky' == $post_data['sticky'] )
500
+ stick_post( $post_ID );
501
+ else
502
+ unstick_post( $post_ID );
503
+ }
504
+
505
+ if ( isset( $post_data['post_format'] ) )
506
+ set_post_format( $post_ID, $post_data['post_format'] );
507
+ }
508
+
509
+ return array( 'updated' => $updated, 'skipped' => $skipped, 'locked' => $locked );
510
+ }
511
+
512
+ /**
513
+ * Default post information to use when populating the "Write Post" form.
514
+ *
515
+ * @since 2.0.0
516
+ *
517
+ * @param string $post_type A post type string, defaults to 'post'.
518
+ * @return WP_Post Post object containing all the default post data as attributes
519
+ */
520
+ function get_default_post_to_edit( $post_type = 'post', $create_in_db = false ) {
521
+ $post_title = '';
522
+ if ( !empty( $_REQUEST['post_title'] ) )
523
+ $post_title = esc_html( wp_unslash( $_REQUEST['post_title'] ));
524
+
525
+ $post_content = '';
526
+ if ( !empty( $_REQUEST['content'] ) )
527
+ $post_content = esc_html( wp_unslash( $_REQUEST['content'] ));
528
+
529
+ $post_excerpt = '';
530
+ if ( !empty( $_REQUEST['excerpt'] ) )
531
+ $post_excerpt = esc_html( wp_unslash( $_REQUEST['excerpt'] ));
532
+
533
+ if ( $create_in_db ) {
534
+ $post_id = wp_insert_post( array( 'post_title' => __( 'Auto Draft' ), 'post_type' => $post_type, 'post_status' => 'auto-draft' ) );
535
+ $post = get_post( $post_id );
536
+ if ( current_theme_supports( 'post-formats' ) && post_type_supports( $post->post_type, 'post-formats' ) && get_option( 'default_post_format' ) )
537
+ set_post_format( $post, get_option( 'default_post_format' ) );
538
+ } else {
539
+ $post = new stdClass;
540
+ $post->ID = 0;
541
+ $post->post_author = '';
542
+ $post->post_date = '';
543
+ $post->post_date_gmt = '';
544
+ $post->post_password = '';
545
+ $post->post_type = $post_type;
546
+ $post->post_status = 'draft';
547
+ $post->to_ping = '';
548
+ $post->pinged = '';
549
+ $post->comment_status = get_option( 'default_comment_status' );
550
+ $post->ping_status = get_option( 'default_ping_status' );
551
+ $post->post_pingback = get_option( 'default_pingback_flag' );
552
+ $post->post_category = get_option( 'default_category' );
553
+ $post->page_template = 'default';
554
+ $post->post_parent = 0;
555
+ $post->menu_order = 0;
556
+ $post = new WP_Post( $post );
557
+ }
558
+
559
+ /**
560
+ * Filter the default post content initially used in the "Write Post" form.
561
+ *
562
+ * @since 1.5.0
563
+ *
564
+ * @param string $post_content Default post content.
565
+ * @param WP_Post $post Post object.
566
+ */
567
+ $post->post_content = apply_filters( 'default_content', $post_content, $post );
568
+
569
+ /**
570
+ * Filter the default post title initially used in the "Write Post" form.
571
+ *
572
+ * @since 1.5.0
573
+ *
574
+ * @param string $post_title Default post title.
575
+ * @param WP_Post $post Post object.
576
+ */
577
+ $post->post_title = apply_filters( 'default_title', $post_title, $post );
578
+
579
+ /**
580
+ * Filter the default post excerpt initially used in the "Write Post" form.
581
+ *
582
+ * @since 1.5.0
583
+ *
584
+ * @param string $post_excerpt Default post excerpt.
585
+ * @param WP_Post $post Post object.
586
+ */
587
+ $post->post_excerpt = apply_filters( 'default_excerpt', $post_excerpt, $post );
588
+ $post->post_name = '';
589
+
590
+ return $post;
591
+ }
592
+
593
+ /**
594
+ * Determine if a post exists based on title, content, and date
595
+ *
596
+ * @since 2.0.0
597
+ *
598
+ * @param string $title Post title
599
+ * @param string $content Optional post content
600
+ * @param string $date Optional post date
601
+ * @return int Post ID if post exists, 0 otherwise.
602
+ */
603
+ function post_exists($title, $content = '', $date = '') {
604
+ global $wpdb;
605
+
606
+ $post_title = wp_unslash( sanitize_post_field( 'post_title', $title, 0, 'db' ) );
607
+ $post_content = wp_unslash( sanitize_post_field( 'post_content', $content, 0, 'db' ) );
608
+ $post_date = wp_unslash( sanitize_post_field( 'post_date', $date, 0, 'db' ) );
609
+
610
+ $query = "SELECT ID FROM $wpdb->posts WHERE 1=1";
611
+ $args = array();
612
+
613
+ if ( !empty ( $date ) ) {
614
+ $query .= ' AND post_date = %s';
615
+ $args[] = $post_date;
616
+ }
617
+
618
+ if ( !empty ( $title ) ) {
619
+ $query .= ' AND post_title = %s';
620
+ $args[] = $post_title;
621
+ }
622
+
623
+ if ( !empty ( $content ) ) {
624
+ $query .= 'AND post_content = %s';
625
+ $args[] = $post_content;
626
+ }
627
+
628
+ if ( !empty ( $args ) )
629
+ return (int) $wpdb->get_var( $wpdb->prepare($query, $args) );
630
+
631
+ return 0;
632
+ }
633
+
634
+ /**
635
+ * Creates a new post from the "Write Post" form using $_POST information.
636
+ *
637
+ * @since 2.1.0
638
+ *
639
+ * @return unknown
640
+ */
641
+ function wp_write_post() {
642
+ if ( isset($_POST['post_type']) )
643
+ $ptype = get_post_type_object($_POST['post_type']);
644
+ else
645
+ $ptype = get_post_type_object('post');
646
+
647
+ if ( !current_user_can( $ptype->cap->edit_posts ) ) {
648
+ if ( 'page' == $ptype->name )
649
+ return new WP_Error( 'edit_pages', __( 'You are not allowed to create pages on this site.' ) );
650
+ else
651
+ return new WP_Error( 'edit_posts', __( 'You are not allowed to create posts or drafts on this site.' ) );
652
+ }
653
+
654
+ $_POST['post_mime_type'] = '';
655
+
656
+ // Clear out any data in internal vars.
657
+ unset( $_POST['filter'] );
658
+
659
+ // Edit don't write if we have a post id.
660
+ if ( isset( $_POST['post_ID'] ) )
661
+ return edit_post();
662
+
663
+ if ( isset($_POST['visibility']) ) {
664
+ switch ( $_POST['visibility'] ) {
665
+ case 'public' :
666
+ $_POST['post_password'] = '';
667
+ break;
668
+ case 'password' :
669
+ unset( $_POST['sticky'] );
670
+ break;
671
+ case 'private' :
672
+ $_POST['post_status'] = 'private';
673
+ $_POST['post_password'] = '';
674
+ unset( $_POST['sticky'] );
675
+ break;
676
+ }
677
+ }
678
+
679
+ $translated = _wp_translate_postdata( false );
680
+ if ( is_wp_error($translated) )
681
+ return $translated;
682
+
683
+ // Create the post.
684
+ $post_ID = wp_insert_post( $_POST );
685
+ if ( is_wp_error( $post_ID ) )
686
+ return $post_ID;
687
+
688
+ if ( empty($post_ID) )
689
+ return 0;
690
+
691
+ add_meta( $post_ID );
692
+
693
+ add_post_meta( $post_ID, '_edit_last', $GLOBALS['current_user']->ID );
694
+
695
+ // Now that we have an ID we can fix any attachment anchor hrefs
696
+ _fix_attachment_links( $post_ID );
697
+
698
+ wp_set_post_lock( $post_ID );
699
+
700
+ return $post_ID;
701
+ }
702
+
703
+ /**
704
+ * Calls wp_write_post() and handles the errors.
705
+ *
706
+ * @since 2.0.0
707
+
708
+ * @uses wp_write_post()
709
+ * @uses is_wp_error()
710
+ * @uses wp_die()
711
+ * @return unknown
712
+ */
713
+ function write_post() {
714
+ $result = wp_write_post();
715
+ if ( is_wp_error( $result ) )
716
+ wp_die( $result->get_error_message() );
717
+ else
718
+ return $result;
719
+ }
720
+
721
+ //
722
+ // Post Meta
723
+ //
724
+
725
+ /**
726
+ * {@internal Missing Short Description}}
727
+ *
728
+ * @since 1.2.0
729
+ *
730
+ * @param unknown_type $post_ID
731
+ * @return unknown
732
+ */
733
+ function add_meta( $post_ID ) {
734
+ $post_ID = (int) $post_ID;
735
+
736
+ $metakeyselect = isset($_POST['metakeyselect']) ? wp_unslash( trim( $_POST['metakeyselect'] ) ) : '';
737
+ $metakeyinput = isset($_POST['metakeyinput']) ? wp_unslash( trim( $_POST['metakeyinput'] ) ) : '';
738
+ $metavalue = isset($_POST['metavalue']) ? $_POST['metavalue'] : '';
739
+ if ( is_string( $metavalue ) )
740
+ $metavalue = trim( $metavalue );
741
+
742
+ if ( ('0' === $metavalue || ! empty ( $metavalue ) ) && ( ( ( '#NONE#' != $metakeyselect ) && !empty ( $metakeyselect) ) || !empty ( $metakeyinput ) ) ) {
743
+ /*
744
+ * We have a key/value pair. If both the select and the input
745
+ * for the key have data, the input takes precedence.
746
+ */
747
+ if ( '#NONE#' != $metakeyselect )
748
+ $metakey = $metakeyselect;
749
+
750
+ if ( $metakeyinput )
751
+ $metakey = $metakeyinput; // default
752
+
753
+ if ( is_protected_meta( $metakey, 'post' ) || ! current_user_can( 'add_post_meta', $post_ID, $metakey ) )
754
+ return false;
755
+
756
+ $metakey = wp_slash( $metakey );
757
+
758
+ return add_post_meta( $post_ID, $metakey, $metavalue );
759
+ }
760
+
761
+ return false;
762
+ } // add_meta
763
+
764
+ /**
765
+ * {@internal Missing Short Description}}
766
+ *
767
+ * @since 1.2.0
768
+ *
769
+ * @param unknown_type $mid
770
+ * @return unknown
771
+ */
772
+ function delete_meta( $mid ) {
773
+ return delete_metadata_by_mid( 'post' , $mid );
774
+ }
775
+
776
+ /**
777
+ * Get a list of previously defined keys.
778
+ *
779
+ * @since 1.2.0
780
+ *
781
+ * @return unknown
782
+ */
783
+ function get_meta_keys() {
784
+ global $wpdb;
785
+
786
+ $keys = $wpdb->get_col( "
787
+ SELECT meta_key
788
+ FROM $wpdb->postmeta
789
+ GROUP BY meta_key
790
+ ORDER BY meta_key" );
791
+
792
+ return $keys;
793
+ }
794
+
795
+ /**
796
+ * {@internal Missing Short Description}}
797
+ *
798
+ * @since 2.1.0
799
+ *
800
+ * @param unknown_type $mid
801
+ * @return unknown
802
+ */
803
+ function get_post_meta_by_id( $mid ) {
804
+ return get_metadata_by_mid( 'post', $mid );
805
+ }
806
+
807
+ /**
808
+ * {@internal Missing Short Description}}
809
+ *
810
+ * Some postmeta stuff.
811
+ *
812
+ * @since 1.2.0
813
+ *
814
+ * @param unknown_type $postid
815
+ * @return unknown
816
+ */
817
+ function has_meta( $postid ) {
818
+ global $wpdb;
819
+
820
+ return $wpdb->get_results( $wpdb->prepare("SELECT meta_key, meta_value, meta_id, post_id
821
+ FROM $wpdb->postmeta WHERE post_id = %d
822
+ ORDER BY meta_key,meta_id", $postid), ARRAY_A );
823
+ }
824
+
825
+ /**
826
+ * {@internal Missing Short Description}}
827
+ *
828
+ * @since 1.2.0
829
+ *
830
+ * @param unknown_type $meta_id
831
+ * @param unknown_type $meta_key Expect Slashed
832
+ * @param unknown_type $meta_value Expect Slashed
833
+ * @return unknown
834
+ */
835
+ function update_meta( $meta_id, $meta_key, $meta_value ) {
836
+ $meta_key = wp_unslash( $meta_key );
837
+ $meta_value = wp_unslash( $meta_value );
838
+
839
+ return update_metadata_by_mid( 'post', $meta_id, $meta_value, $meta_key );
840
+ }
841
+
842
+ //
843
+ // Private
844
+ //
845
+
846
+ /**
847
+ * Replace hrefs of attachment anchors with up-to-date permalinks.
848
+ *
849
+ * @since 2.3.0
850
+ * @access private
851
+ *
852
+ * @param int|object $post Post ID or post object.
853
+ * @return void|int|WP_Error Void if nothing fixed. 0 or WP_Error on update failure. The post ID on update success.
854
+ */
855
+ function _fix_attachment_links( $post ) {
856
+ $post = get_post( $post, ARRAY_A );
857
+ $content = $post['post_content'];
858
+
859
+ // Don't run if no pretty permalinks or post is not published, scheduled, or privately published.
860
+ if ( ! get_option( 'permalink_structure' ) || ! in_array( $post['post_status'], array( 'publish', 'future', 'private' ) ) )
861
+ return;
862
+
863
+ // Short if there aren't any links or no '?attachment_id=' strings (strpos cannot be zero)
864
+ if ( !strpos($content, '?attachment_id=') || !preg_match_all( '/<a ([^>]+)>[\s\S]+?<\/a>/', $content, $link_matches ) )
865
+ return;
866
+
867
+ $site_url = get_bloginfo('url');
868
+ $site_url = substr( $site_url, (int) strpos($site_url, '://') ); // remove the http(s)
869
+ $replace = '';
870
+
871
+ foreach ( $link_matches[1] as $key => $value ) {
872
+ if ( !strpos($value, '?attachment_id=') || !strpos($value, 'wp-att-')
873
+ || !preg_match( '/href=(["\'])[^"\']*\?attachment_id=(\d+)[^"\']*\\1/', $value, $url_match )
874
+ || !preg_match( '/rel=["\'][^"\']*wp-att-(\d+)/', $value, $rel_match ) )
875
+ continue;
876
+
877
+ $quote = $url_match[1]; // the quote (single or double)
878
+ $url_id = (int) $url_match[2];
879
+ $rel_id = (int) $rel_match[1];
880
+
881
+ if ( !$url_id || !$rel_id || $url_id != $rel_id || strpos($url_match[0], $site_url) === false )
882
+ continue;
883
+
884
+ $link = $link_matches[0][$key];
885
+ $replace = str_replace( $url_match[0], 'href=' . $quote . get_attachment_link( $url_id ) . $quote, $link );
886
+
887
+ $content = str_replace( $link, $replace, $content );
888
+ }
889
+
890
+ if ( $replace ) {
891
+ $post['post_content'] = $content;
892
+ // Escape data pulled from DB.
893
+ $post = add_magic_quotes($post);
894
+
895
+ return wp_update_post($post);
896
+ }
897
+ }
898
+
899
+ /**
900
+ * Get all the possible statuses for a post_type
901
+ *
902
+ * @since 2.5.0
903
+ *
904
+ * @param string $type The post_type you want the statuses for
905
+ * @return array As array of all the statuses for the supplied post type
906
+ */
907
+ function get_available_post_statuses($type = 'post') {
908
+ $stati = wp_count_posts($type);
909
+
910
+ return array_keys(get_object_vars($stati));
911
+ }
912
+
913
+ /**
914
+ * Run the wp query to fetch the posts for listing on the edit posts page
915
+ *
916
+ * @since 2.5.0
917
+ *
918
+ * @param array|bool $q Array of query variables to use to build the query or false to use $_GET superglobal.
919
+ * @return array
920
+ */
921
+ function wp_edit_posts_query( $q = false ) {
922
+ if ( false === $q )
923
+ $q = $_GET;
924
+ $q['m'] = isset($q['m']) ? (int) $q['m'] : 0;
925
+ $q['cat'] = isset($q['cat']) ? (int) $q['cat'] : 0;
926
+ $post_stati = get_post_stati();
927
+
928
+ if ( isset($q['post_type']) && in_array( $q['post_type'], get_post_types() ) )
929
+ $post_type = $q['post_type'];
930
+ else
931
+ $post_type = 'post';
932
+
933
+ $avail_post_stati = get_available_post_statuses($post_type);
934
+
935
+ if ( isset($q['post_status']) && in_array( $q['post_status'], $post_stati ) ) {
936
+ $post_status = $q['post_status'];
937
+ $perm = 'readable';
938
+ }
939
+
940
+ if ( isset($q['orderby']) )
941
+ $orderby = $q['orderby'];
942
+ elseif ( isset($q['post_status']) && in_array($q['post_status'], array('pending', 'draft')) )
943
+ $orderby = 'modified';
944
+
945
+ if ( isset($q['order']) )
946
+ $order = $q['order'];
947
+ elseif ( isset($q['post_status']) && 'pending' == $q['post_status'] )
948
+ $order = 'ASC';
949
+
950
+ $per_page = "edit_{$post_type}_per_page";
951
+ $posts_per_page = (int) get_user_option( $per_page );
952
+ if ( empty( $posts_per_page ) || $posts_per_page < 1 )
953
+ $posts_per_page = 20;
954
+
955
+ /**
956
+ * Filter the number of items per page to show for a specific 'per_page' type.
957
+ *
958
+ * The dynamic portion of the hook name, $post_type, refers to the post type.
959
+ *
960
+ * Some examples of filter hooks generated here include: 'edit_attachment_per_page',
961
+ * 'edit_post_per_page', 'edit_page_per_page', etc.
962
+ *
963
+ * @since 3.0.0
964
+ *
965
+ * @param int $posts_per_page Number of posts to display per page for the given post
966
+ * type. Default 20.
967
+ */
968
+ $posts_per_page = apply_filters( "edit_{$post_type}_per_page", $posts_per_page );
969
+
970
+ /**
971
+ * Filter the number of posts displayed per page when specifically listing "posts".
972
+ *
973
+ * @since 2.8.0
974
+ *
975
+ * @param int $posts_per_page Number of posts to be displayed. Default 20.
976
+ * @param string $post_type The post type.
977
+ */
978
+ $posts_per_page = apply_filters( 'edit_posts_per_page', $posts_per_page, $post_type );
979
+
980
+ $query = compact('post_type', 'post_status', 'perm', 'order', 'orderby', 'posts_per_page');
981
+
982
+ // Hierarchical types require special args.
983
+ if ( is_post_type_hierarchical( $post_type ) && !isset($orderby) ) {
984
+ $query['orderby'] = 'menu_order title';
985
+ $query['order'] = 'asc';
986
+ $query['posts_per_page'] = -1;
987
+ $query['posts_per_archive_page'] = -1;
988
+ }
989
+
990
+ if ( ! empty( $q['show_sticky'] ) )
991
+ $query['post__in'] = (array) get_option( 'sticky_posts' );
992
+
993
+ wp( $query );
994
+
995
+ return $avail_post_stati;
996
+ }
997
+
998
+ /**
999
+ * {@internal Missing Short Description}}
1000
+ *
1001
+ * @since 2.5.0
1002
+ *
1003
+ * @param unknown_type $type
1004
+ * @return unknown
1005
+ */
1006
+ function get_available_post_mime_types($type = 'attachment') {
1007
+ global $wpdb;
1008
+
1009
+ $types = $wpdb->get_col($wpdb->prepare("SELECT DISTINCT post_mime_type FROM $wpdb->posts WHERE post_type = %s", $type));
1010
+ return $types;
1011
+ }
1012
+
1013
+ /**
1014
+ * Executes a query for attachments. An array of WP_Query arguments
1015
+ * can be passed in, which will override the arguments set by this function.
1016
+ *
1017
+ * @since 2.5.0
1018
+ *
1019
+ * @param array|bool $q Array of query variables to use to build the query or false to use $_GET superglobal.
1020
+ * @return array
1021
+ */
1022
+ function wp_edit_attachments_query( $q = false ) {
1023
+ if ( false === $q )
1024
+ $q = $_GET;
1025
+
1026
+ $q['m'] = isset( $q['m'] ) ? (int) $q['m'] : 0;
1027
+ $q['cat'] = isset( $q['cat'] ) ? (int) $q['cat'] : 0;
1028
+ $q['post_type'] = 'attachment';
1029
+ $post_type = get_post_type_object( 'attachment' );
1030
+ $states = 'inherit';
1031
+ if ( current_user_can( $post_type->cap->read_private_posts ) )
1032
+ $states .= ',private';
1033
+
1034
+ $q['post_status'] = isset( $q['status'] ) && 'trash' == $q['status'] ? 'trash' : $states;
1035
+ $q['post_status'] = isset( $q['attachment-filter'] ) && 'trash' == $q['attachment-filter'] ? 'trash' : $states;
1036
+
1037
+ $media_per_page = (int) get_user_option( 'upload_per_page' );
1038
+ if ( empty( $media_per_page ) || $media_per_page < 1 )
1039
+ $media_per_page = 20;
1040
+
1041
+ /**
1042
+ * Filter the number of items to list per page when listing media items.
1043
+ *
1044
+ * @since 2.9.0
1045
+ *
1046
+ * @param int $media_per_page Number of media to list. Default 20.
1047
+ */
1048
+ $q['posts_per_page'] = apply_filters( 'upload_per_page', $media_per_page );
1049
+
1050
+ $post_mime_types = get_post_mime_types();
1051
+ $avail_post_mime_types = get_available_post_mime_types('attachment');
1052
+
1053
+ if ( isset($q['post_mime_type']) && !array_intersect( (array) $q['post_mime_type'], array_keys($post_mime_types) ) )
1054
+ unset($q['post_mime_type']);
1055
+
1056
+ foreach( array_keys( $post_mime_types ) as $type ) {
1057
+ if ( isset( $q['attachment-filter'] ) && "post_mime_type:$type" == $q['attachment-filter'] ) {
1058
+ $q['post_mime_type'] = $type;
1059
+ break;
1060
+ }
1061
+ }
1062
+
1063
+ if ( isset( $q['detached'] ) || ( isset( $q['attachment-filter'] ) && 'detached' == $q['attachment-filter'] ) ) {
1064
+ $q['post_parent'] = 0;
1065
+ }
1066
+
1067
+ wp( $q );
1068
+
1069
+ return array($post_mime_types, $avail_post_mime_types);
1070
+ }
1071
+
1072
+ /**
1073
+ * Returns the list of classes to be used by a metabox
1074
+ *
1075
+ * @uses get_user_option()
1076
+ * @since 2.5.0
1077
+ *
1078
+ * @param unknown_type $id
1079
+ * @param unknown_type $page
1080
+ * @return unknown
1081
+ */
1082
+ function postbox_classes( $id, $page ) {
1083
+ if ( isset( $_GET['edit'] ) && $_GET['edit'] == $id ) {
1084
+ $classes = array( '' );
1085
+ } elseif ( $closed = get_user_option('closedpostboxes_'.$page ) ) {
1086
+ if ( !is_array( $closed ) ) {
1087
+ $classes = array( '' );
1088
+ } else {
1089
+ $classes = in_array( $id, $closed ) ? array( 'closed' ) : array( '' );
1090
+ }
1091
+ } else {
1092
+ $classes = array( '' );
1093
+ }
1094
+
1095
+ /**
1096
+ * Filter the postbox classes for a specific screen and screen ID combo.
1097
+ *
1098
+ * The dynamic portions of the hook name, $page, and $id, refer to
1099
+ * the screen, and screen ID, respectively.
1100
+ *
1101
+ * @since 3.2.0
1102
+ *
1103
+ * @param array $classes An array of postbox classes.
1104
+ */
1105
+ $classes = apply_filters( "postbox_classes_{$page}_{$id}", $classes );
1106
+ return implode( ' ', $classes );
1107
+ }
1108
+
1109
+ /**
1110
+ * {@internal Missing Short Description}}
1111
+ *
1112
+ * @since 2.5.0
1113
+ *
1114
+ * @param int|object $id Post ID or post object.
1115
+ * @param string $title (optional) Title
1116
+ * @param string $name (optional) Name
1117
+ * @return array With two entries of type string
1118
+ */
1119
+ function get_sample_permalink($id, $title = null, $name = null) {
1120
+ $post = get_post( $id );
1121
+ if ( ! $post )
1122
+ return array( '', '' );
1123
+
1124
+ $ptype = get_post_type_object($post->post_type);
1125
+
1126
+ $original_status = $post->post_status;
1127
+ $original_date = $post->post_date;
1128
+ $original_name = $post->post_name;
1129
+
1130
+ // Hack: get_permalink() would return ugly permalink for drafts, so we will fake that our post is published.
1131
+ if ( in_array( $post->post_status, array( 'draft', 'pending' ) ) ) {
1132
+ $post->post_status = 'publish';
1133
+ $post->post_name = sanitize_title($post->post_name ? $post->post_name : $post->post_title, $post->ID);
1134
+ }
1135
+
1136
+ // If the user wants to set a new name -- override the current one
1137
+ // Note: if empty name is supplied -- use the title instead, see #6072
1138
+ if ( !is_null($name) )
1139
+ $post->post_name = sanitize_title($name ? $name : $title, $post->ID);
1140
+
1141
+ $post->post_name = wp_unique_post_slug($post->post_name, $post->ID, $post->post_status, $post->post_type, $post->post_parent);
1142
+
1143
+ $post->filter = 'sample';
1144
+
1145
+ $permalink = get_permalink($post, true);
1146
+
1147
+ // Replace custom post_type Token with generic pagename token for ease of use.
1148
+ $permalink = str_replace("%$post->post_type%", '%pagename%', $permalink);
1149
+
1150
+ // Handle page hierarchy
1151
+ if ( $ptype->hierarchical ) {
1152
+ $uri = get_page_uri($post);
1153
+ $uri = untrailingslashit($uri);
1154
+ $uri = strrev( stristr( strrev( $uri ), '/' ) );
1155
+ $uri = untrailingslashit($uri);
1156
+
1157
+ /** This filter is documented in wp-admin/edit-tag-form.php */
1158
+ $uri = apply_filters( 'editable_slug', $uri );
1159
+ if ( !empty($uri) )
1160
+ $uri .= '/';
1161
+ $permalink = str_replace('%pagename%', "{$uri}%pagename%", $permalink);
1162
+ }
1163
+
1164
+ /** This filter is documented in wp-admin/edit-tag-form.php */
1165
+ $permalink = array( $permalink, apply_filters( 'editable_slug', $post->post_name ) );
1166
+ $post->post_status = $original_status;
1167
+ $post->post_date = $original_date;
1168
+ $post->post_name = $original_name;
1169
+ unset($post->filter);
1170
+
1171
+ return $permalink;
1172
+ }
1173
+
1174
+ /**
1175
+ * Returns the HTML of the sample permalink slug editor.
1176
+ *
1177
+ * @since 2.5.0
1178
+ *
1179
+ * @param int|object $id Post ID or post object.
1180
+ * @param string $new_title Optional. New title.
1181
+ * @param string $new_slug Optional. New slug.
1182
+ * @return string The HTML of the sample permalink slug editor.
1183
+ */
1184
+ function get_sample_permalink_html( $id, $new_title = null, $new_slug = null ) {
1185
+ $post = get_post( $id );
1186
+ if ( ! $post )
1187
+ return '';
1188
+
1189
+ list($permalink, $post_name) = get_sample_permalink($post->ID, $new_title, $new_slug);
1190
+
1191
+ if ( current_user_can( 'read_post', $post->ID ) ) {
1192
+ $ptype = get_post_type_object( $post->post_type );
1193
+ $view_post = $ptype->labels->view_item;
1194
+ }
1195
+
1196
+ if ( 'publish' == get_post_status( $post ) ) {
1197
+ $title = __('Click to edit this part of the permalink');
1198
+ } else {
1199
+ $title = __('Temporary permalink. Click to edit this part.');
1200
+ }
1201
+
1202
+ if ( false === strpos( $permalink, '%postname%' ) && false === strpos( $permalink, '%pagename%' ) ) {
1203
+ $return = '<strong>' . __('Permalink:') . "</strong>\n" . '<span id="sample-permalink" tabindex="-1">' . $permalink . "</span>\n";
1204
+ if ( '' == get_option( 'permalink_structure' ) && current_user_can( 'manage_options' ) && !( 'page' == get_option('show_on_front') && $id == get_option('page_on_front') ) ) {
1205
+ $return .= '<span id="change-permalinks"><a href="options-permalink.php" class="button button-small" target="_blank">' . __('Change Permalinks') . "</a></span>\n";
1206
+ }
1207
+ } else {
1208
+ if ( function_exists( 'mb_strlen' ) && mb_strlen( $post_name ) > 30 ) {
1209
+ $post_name_abridged = mb_substr( $post_name, 0, 14 ) . '&hellip;' . mb_substr( $post_name, -14 );
1210
+ } elseif ( strlen( $post_name ) > 30 ) {
1211
+ $post_name_abridged = substr( $post_name, 0, 14 ) . '&hellip;' . substr( $post_name, -14 );
1212
+ } else {
1213
+ $post_name_abridged = $post_name;
1214
+ }
1215
+
1216
+ $post_name_html = '<span id="editable-post-name" title="' . $title . '">' . $post_name_abridged . '</span>';
1217
+ $display_link = str_replace( array( '%pagename%', '%postname%' ), $post_name_html, $permalink );
1218
+
1219
+ $return = '<strong>' . __( 'Permalink:' ) . "</strong>\n";
1220
+ $return .= '<span id="sample-permalink" tabindex="-1">' . $display_link . "</span>\n";
1221
+ $return .= '&lrm;'; // Fix bi-directional text display defect in RTL languages.
1222
+ $return .= '<span id="edit-slug-buttons"><a href="#post_name" class="edit-slug button button-small hide-if-no-js" onclick="editPermalink(' . $id . '); return false;">' . __( 'Edit' ) . "</a></span>\n";
1223
+ $return .= '<span id="editable-post-name-full">' . $post_name . "</span>\n";
1224
+ }
1225
+
1226
+ if ( isset( $view_post ) ) {
1227
+ if( 'draft' == $post->post_status ) {
1228
+ $preview_link = set_url_scheme( get_permalink( $post->ID ) );
1229
+ /** This filter is documented in wp-admin/includes/meta-boxes.php */
1230
+ $preview_link = apply_filters( 'preview_post_link', add_query_arg( 'preview', 'true', $preview_link ), $post );
1231
+ $return .= "<span id='view-post-btn'><a href='" . esc_url( $preview_link ) . "' class='button button-small' target='wp-preview-{$post->ID}'>$view_post</a></span>\n";
1232
+ } else {
1233
+ $return .= "<span id='view-post-btn'><a href='" . get_permalink( $post ) . "' class='button button-small'>$view_post</a></span>\n";
1234
+ }
1235
+ }
1236
+
1237
+ /**
1238
+ * Filter the sample permalink HTML markup.
1239
+ *
1240
+ * @since 2.9.0
1241
+ *
1242
+ * @param string $return Sample permalink HTML markup.
1243
+ * @param int|WP_Post $id Post object or ID.
1244
+ * @param string $new_title New sample permalink title.
1245
+ * @param string $new_slug New sample permalink slug.
1246
+ */
1247
+ $return = apply_filters( 'get_sample_permalink_html', $return, $id, $new_title, $new_slug );
1248
+
1249
+ return $return;
1250
+ }
1251
+
1252
+ /**
1253
+ * Output HTML for the post thumbnail meta-box.
1254
+ *
1255
+ * @since 2.9.0
1256
+ *
1257
+ * @param int $thumbnail_id ID of the attachment used for thumbnail
1258
+ * @param mixed $post The post ID or object associated with the thumbnail, defaults to global $post.
1259
+ * @return string html
1260
+ */
1261
+ function _wp_post_thumbnail_html( $thumbnail_id = null, $post = null ) {
1262
+ global $content_width, $_wp_additional_image_sizes;
1263
+
1264
+ $post = get_post( $post );
1265
+
1266
+ $upload_iframe_src = esc_url( get_upload_iframe_src('image', $post->ID ) );
1267
+ $set_thumbnail_link = '<p class="hide-if-no-js"><a title="' . esc_attr__( 'Set featured image' ) . '" href="%s" id="set-post-thumbnail" class="thickbox">%s</a></p>';
1268
+ $content = sprintf( $set_thumbnail_link, $upload_iframe_src, esc_html__( 'Set featured image' ) );
1269
+
1270
+ if ( $thumbnail_id && get_post( $thumbnail_id ) ) {
1271
+ $old_content_width = $content_width;
1272
+ $content_width = 266;
1273
+ if ( !isset( $_wp_additional_image_sizes['post-thumbnail'] ) )
1274
+ $thumbnail_html = wp_get_attachment_image( $thumbnail_id, array( $content_width, $content_width ) );
1275
+ else
1276
+ $thumbnail_html = wp_get_attachment_image( $thumbnail_id, 'post-thumbnail' );
1277
+ if ( !empty( $thumbnail_html ) ) {
1278
+ $ajax_nonce = wp_create_nonce( 'set_post_thumbnail-' . $post->ID );
1279
+ $content = sprintf( $set_thumbnail_link, $upload_iframe_src, $thumbnail_html );
1280
+ $content .= '<p class="hide-if-no-js"><a href="#" id="remove-post-thumbnail" onclick="WPRemoveThumbnail(\'' . $ajax_nonce . '\');return false;">' . esc_html__( 'Remove featured image' ) . '</a></p>';
1281
+ }
1282
+ $content_width = $old_content_width;
1283
+ }
1284
+
1285
+ /**
1286
+ * Filter the admin post thumbnail HTML markup to return.
1287
+ *
1288
+ * @since 2.9.0
1289
+ *
1290
+ * @param string $content Admin post thumbnail HTML markup.
1291
+ * @param int $post_id Post ID.
1292
+ */
1293
+ return apply_filters( 'admin_post_thumbnail_html', $content, $post->ID );
1294
+ }
1295
+
1296
+ /**
1297
+ * Check to see if the post is currently being edited by another user.
1298
+ *
1299
+ * @since 2.5.0
1300
+ *
1301
+ * @param int $post_id ID of the post to check for editing
1302
+ * @return bool|int False: not locked or locked by current user. Int: user ID of user with lock.
1303
+ */
1304
+ function wp_check_post_lock( $post_id ) {
1305
+ if ( !$post = get_post( $post_id ) )
1306
+ return false;
1307
+
1308
+ if ( !$lock = get_post_meta( $post->ID, '_edit_lock', true ) )
1309
+ return false;
1310
+
1311
+ $lock = explode( ':', $lock );
1312
+ $time = $lock[0];
1313
+ $user = isset( $lock[1] ) ? $lock[1] : get_post_meta( $post->ID, '_edit_last', true );
1314
+
1315
+ /** This filter is documented in wp-admin/includes/ajax-actions.php */
1316
+ $time_window = apply_filters( 'wp_check_post_lock_window', 150 );
1317
+
1318
+ if ( $time && $time > time() - $time_window && $user != get_current_user_id() )
1319
+ return $user;
1320
+ return false;
1321
+ }
1322
+
1323
+ /**
1324
+ * Mark the post as currently being edited by the current user
1325
+ *
1326
+ * @since 2.5.0
1327
+ *
1328
+ * @param int $post_id ID of the post to being edited
1329
+ * @return bool|array Returns false if the post doesn't exist of there is no current user, or
1330
+ * an array of the lock time and the user ID.
1331
+ */
1332
+ function wp_set_post_lock( $post_id ) {
1333
+ if ( !$post = get_post( $post_id ) )
1334
+ return false;
1335
+ if ( 0 == ($user_id = get_current_user_id()) )
1336
+ return false;
1337
+
1338
+ $now = time();
1339
+ $lock = "$now:$user_id";
1340
+
1341
+ update_post_meta( $post->ID, '_edit_lock', $lock );
1342
+ return array( $now, $user_id );
1343
+ }
1344
+
1345
+ /**
1346
+ * Outputs the HTML for the notice to say that someone else is editing or has taken over editing of this post.
1347
+ *
1348
+ * @since 2.8.5
1349
+ * @return none
1350
+ */
1351
+ function _admin_notice_post_locked() {
1352
+ if ( ! $post = get_post() )
1353
+ return;
1354
+
1355
+ $user = null;
1356
+ if ( $user_id = wp_check_post_lock( $post->ID ) )
1357
+ $user = get_userdata( $user_id );
1358
+
1359
+ if ( $user ) {
1360
+
1361
+ /**
1362
+ * Filter whether to show the post locked dialog.
1363
+ *
1364
+ * Returning a falsey value to the filter will short-circuit displaying the dialog.
1365
+ *
1366
+ * @since 3.6.0
1367
+ *
1368
+ * @param bool $display Whether to display the dialog. Default true.
1369
+ * @param WP_User|bool $user WP_User object on success, false otherwise.
1370
+ */
1371
+ if ( ! apply_filters( 'show_post_locked_dialog', true, $post, $user ) )
1372
+ return;
1373
+
1374
+ $locked = true;
1375
+ } else {
1376
+ $locked = false;
1377
+ }
1378
+
1379
+ if ( $locked && ( $sendback = wp_get_referer() ) &&
1380
+ false === strpos( $sendback, 'post.php' ) && false === strpos( $sendback, 'post-new.php' ) ) {
1381
+
1382
+ $sendback_text = __('Go back');
1383
+ } else {
1384
+ $sendback = admin_url( 'edit.php' );
1385
+
1386
+ if ( 'post' != $post->post_type )
1387
+ $sendback = add_query_arg( 'post_type', $post->post_type, $sendback );
1388
+
1389
+ $sendback_text = get_post_type_object( $post->post_type )->labels->all_items;
1390
+ }
1391
+
1392
+ $hidden = $locked ? '' : ' hidden';
1393
+
1394
+ ?>
1395
+ <div id="post-lock-dialog" class="notification-dialog-wrap<?php echo $hidden; ?>">
1396
+ <div class="notification-dialog-background"></div>
1397
+ <div class="notification-dialog">
1398
+ <?php
1399
+
1400
+ if ( $locked ) {
1401
+ if ( get_post_type_object( $post->post_type )->public ) {
1402
+ $preview_link = set_url_scheme( add_query_arg( 'preview', 'true', get_permalink( $post->ID ) ) );
1403
+
1404
+ if ( 'publish' == $post->post_status || $user->ID != $post->post_author ) {
1405
+ // Latest content is in autosave
1406
+ $nonce = wp_create_nonce( 'post_preview_' . $post->ID );
1407
+ $preview_link = add_query_arg( array( 'preview_id' => $post->ID, 'preview_nonce' => $nonce ), $preview_link );
1408
+ }
1409
+ } else {
1410
+ $preview_link = '';
1411
+ }
1412
+
1413
+ /** This filter is documented in wp-admin/includes/meta-boxes.php */
1414
+ $preview_link = apply_filters( 'preview_post_link', $preview_link, $post );
1415
+
1416
+ /**
1417
+ * Filter whether to allow the post lock to be overridden.
1418
+ *
1419
+ * Returning a falsey value to the filter will disable the ability
1420
+ * to override the post lock.
1421
+ *
1422
+ * @since 3.6.0
1423
+ *
1424
+ * @param bool $override Whether to allow overriding post locks. Default true.
1425
+ * @param WP_Post $post Post object.
1426
+ * @param WP_User $user User object.
1427
+ */
1428
+ $override = apply_filters( 'override_post_lock', true, $post, $user );
1429
+ $tab_last = $override ? '' : ' wp-tab-last';
1430
+
1431
+ ?>
1432
+ <div class="post-locked-message">
1433
+ <div class="post-locked-avatar"><?php echo get_avatar( $user->ID, 64 ); ?></div>
1434
+ <p class="currently-editing wp-tab-first" tabindex="0">
1435
+ <?php
1436
+ _e( 'This content is currently locked.' );
1437
+ if ( $override )
1438
+ printf( ' ' . __( 'If you take over, %s will be blocked from continuing to edit.' ), esc_html( $user->display_name ) );
1439
+ ?>
1440
+ </p>
1441
+ <?php
1442
+ /**
1443
+ * Fires inside the post locked dialog before the buttons are displayed.
1444
+ *
1445
+ * @since 3.6.0
1446
+ *
1447
+ * @param WP_Post $post Post object.
1448
+ */
1449
+ do_action( 'post_locked_dialog', $post );
1450
+ ?>
1451
+ <p>
1452
+ <a class="button" href="<?php echo esc_url( $sendback ); ?>"><?php echo $sendback_text; ?></a>
1453
+ <?php if ( $preview_link ) { ?>
1454
+ <a class="button<?php echo $tab_last; ?>" href="<?php echo esc_url( $preview_link ); ?>"><?php _e('Preview'); ?></a>
1455
+ <?php
1456
+ }
1457
+
1458
+ // Allow plugins to prevent some users overriding the post lock
1459
+ if ( $override ) {
1460
+ ?>
1461
+ <a class="button button-primary wp-tab-last" href="<?php echo esc_url( add_query_arg( 'get-post-lock', '1', get_edit_post_link( $post->ID, 'url' ) ) ); ?>"><?php _e('Take over'); ?></a>
1462
+ <?php
1463
+ }
1464
+
1465
+ ?>
1466
+ </p>
1467
+ </div>
1468
+ <?php
1469
+ } else {
1470
+ ?>
1471
+ <div class="post-taken-over">
1472
+ <div class="post-locked-avatar"></div>
1473
+ <p class="wp-tab-first" tabindex="0">
1474
+ <span class="currently-editing"></span><br />
1475
+ <span class="locked-saving hidden"><img src="images/wpspin_light-2x.gif" width="16" height="16" /> <?php _e('Saving revision...'); ?></span>
1476
+ <span class="locked-saved hidden"><?php _e('Your latest changes were saved as a revision.'); ?></span>
1477
+ </p>
1478
+ <?php
1479
+ /**
1480
+ * Fires inside the dialog displayed when a user has lost the post lock.
1481
+ *
1482
+ * @since 3.6.0
1483
+ *
1484
+ * @param WP_Post $post Post object.
1485
+ */
1486
+ do_action( 'post_lock_lost_dialog', $post );
1487
+ ?>
1488
+ <p><a class="button button-primary wp-tab-last" href="<?php echo esc_url( $sendback ); ?>"><?php echo $sendback_text; ?></a></p>
1489
+ </div>
1490
+ <?php
1491
+ }
1492
+
1493
+ ?>
1494
+ </div>
1495
+ </div>
1496
+ <?php
1497
+ }
1498
+
1499
+ /**
1500
+ * Creates autosave data for the specified post from $_POST data.
1501
+ *
1502
+ * @package WordPress
1503
+ * @subpackage Post_Revisions
1504
+ * @since 2.6.0
1505
+ *
1506
+ * @uses _wp_translate_postdata()
1507
+ * @uses _wp_post_revision_fields()
1508
+ *
1509
+ * @param mixed $post_data Associative array containing the post data or int post ID.
1510
+ * @return mixed The autosave revision ID. WP_Error or 0 on error.
1511
+ */
1512
+ function wp_create_post_autosave( $post_data ) {
1513
+ if ( is_numeric( $post_data ) ) {
1514
+ $post_id = $post_data;
1515
+ $post_data = &$_POST;
1516
+ } else {
1517
+ $post_id = (int) $post_data['post_ID'];
1518
+ }
1519
+
1520
+ $post_data = _wp_translate_postdata( true, $post_data );
1521
+ if ( is_wp_error( $post_data ) )
1522
+ return $post_data;
1523
+
1524
+ $post_author = get_current_user_id();
1525
+
1526
+ // Store one autosave per author. If there is already an autosave, overwrite it.
1527
+ if ( $old_autosave = wp_get_post_autosave( $post_id, $post_author ) ) {
1528
+ $new_autosave = _wp_post_revision_fields( $post_data, true );
1529
+ $new_autosave['ID'] = $old_autosave->ID;
1530
+ $new_autosave['post_author'] = $post_author;
1531
+
1532
+ // If the new autosave has the same content as the post, delete the autosave.
1533
+ $post = get_post( $post_id );
1534
+ $autosave_is_different = false;
1535
+ foreach ( array_intersect( array_keys( $new_autosave ), array_keys( _wp_post_revision_fields() ) ) as $field ) {
1536
+ if ( normalize_whitespace( $new_autosave[ $field ] ) != normalize_whitespace( $post->$field ) ) {
1537
+ $autosave_is_different = true;
1538
+ break;
1539
+ }
1540
+ }
1541
+
1542
+ if ( ! $autosave_is_different ) {
1543
+ wp_delete_post_revision( $old_autosave->ID );
1544
+ return 0;
1545
+ }
1546
+
1547
+ return wp_update_post( $new_autosave );
1548
+ }
1549
+
1550
+ // _wp_put_post_revision() expects unescaped.
1551
+ $post_data = wp_unslash( $post_data );
1552
+
1553
+ // Otherwise create the new autosave as a special post revision
1554
+ return _wp_put_post_revision( $post_data, true );
1555
+ }
1556
+
1557
+ /**
1558
+ * Save draft or manually autosave for showing preview.
1559
+ *
1560
+ * @package WordPress
1561
+ * @since 2.7.0
1562
+ *
1563
+ * @uses get_post_status()
1564
+ * @uses edit_post()
1565
+ * @uses get_post()
1566
+ * @uses current_user_can()
1567
+ * @uses wp_die()
1568
+ * @uses wp_create_post_autosave()
1569
+ * @uses add_query_arg()
1570
+ * @uses wp_create_nonce()
1571
+ *
1572
+ * @return str URL to redirect to show the preview
1573
+ */
1574
+ function post_preview() {
1575
+
1576
+ $post_ID = (int) $_POST['post_ID'];
1577
+ $_POST['ID'] = $post_ID;
1578
+
1579
+ if ( ! $post = get_post( $post_ID ) ) {
1580
+ wp_die( __( 'You are not allowed to edit this post.' ) );
1581
+ }
1582
+
1583
+ if ( ! current_user_can( 'edit_post', $post->ID ) ) {
1584
+ wp_die( __( 'You are not allowed to edit this post.' ) );
1585
+ }
1586
+
1587
+ $is_autosave = false;
1588
+
1589
+ if ( ! wp_check_post_lock( $post->ID ) && get_current_user_id() == $post->post_author && ( 'draft' == $post->post_status || 'auto-draft' == $post->post_status ) ) {
1590
+ $saved_post_id = edit_post();
1591
+ } else {
1592
+ $is_autosave = true;
1593
+
1594
+ if ( 'auto-draft' == $_POST['post_status'] )
1595
+ $_POST['post_status'] = 'draft';
1596
+
1597
+ $saved_post_id = wp_create_post_autosave( $post->ID );
1598
+ }
1599
+
1600
+ if ( is_wp_error( $saved_post_id ) )
1601
+ wp_die( $saved_post_id->get_error_message() );
1602
+
1603
+ $query_args = array( 'preview' => 'true' );
1604
+
1605
+ if ( $is_autosave && $saved_post_id ) {
1606
+ $query_args['preview_id'] = $post->ID;
1607
+ $query_args['preview_nonce'] = wp_create_nonce( 'post_preview_' . $post->ID );
1608
+
1609
+ if ( isset( $_POST['post_format'] ) )
1610
+ $query_args['post_format'] = empty( $_POST['post_format'] ) ? 'standard' : sanitize_key( $_POST['post_format'] );
1611
+ }
1612
+
1613
+ $url = add_query_arg( $query_args, get_permalink( $post->ID ) );
1614
+
1615
+ /** This filter is documented in wp-admin/includes/meta-boxes.php */
1616
+ return apply_filters( 'preview_post_link', $url, $post );
1617
+ }
1618
+
1619
+ /**
1620
+ * Save a post submitted with XHR
1621
+ *
1622
+ * Intended for use with heartbeat and autosave.js
1623
+ *
1624
+ * @since 3.9.0
1625
+ *
1626
+ * @param $post_data Associative array of the submitted post data.
1627
+ * @return mixed The value 0 or WP_Error on failure. The saved post ID on success.
1628
+ * Te ID can be the draft post_id or the autosave revision post_id.
1629
+ */
1630
+ function wp_autosave( $post_data ) {
1631
+ // Back-compat
1632
+ if ( ! defined( 'DOING_AUTOSAVE' ) )
1633
+ define( 'DOING_AUTOSAVE', true );
1634
+
1635
+ $post_id = (int) $post_data['post_id'];
1636
+ $post_data['ID'] = $post_data['post_ID'] = $post_id;
1637
+
1638
+ if ( false === wp_verify_nonce( $post_data['_wpnonce'], 'update-post_' . $post_id ) ) {
1639
+ return new WP_Error( 'invalid_nonce', __( 'Error while saving.' ) );
1640
+ }
1641
+
1642
+ $post = get_post( $post_id );
1643
+
1644
+ if ( ! current_user_can( 'edit_post', $post->ID ) ) {
1645
+ return new WP_Error( 'edit_posts', __( 'You are not allowed to edit this item.' ) );
1646
+ }
1647
+
1648
+ if ( 'auto-draft' == $post->post_status )
1649
+ $post_data['post_status'] = 'draft';
1650
+
1651
+ if ( $post_data['post_type'] != 'page' && ! empty( $post_data['catslist'] ) )
1652
+ $post_data['post_category'] = explode( ',', $post_data['catslist'] );
1653
+
1654
+ if ( ! wp_check_post_lock( $post->ID ) && get_current_user_id() == $post->post_author && ( 'auto-draft' == $post->post_status || 'draft' == $post->post_status ) ) {
1655
+ // Drafts and auto-drafts are just overwritten by autosave for the same user if the post is not locked
1656
+ return edit_post( wp_slash( $post_data ) );
1657
+ } else {
1658
+ // Non drafts or other users drafts are not overwritten. The autosave is stored in a special post revision for each user.
1659
+ return wp_create_post_autosave( wp_slash( $post_data ) );
1660
+ }
1661
+ }