Instant Articles for WP - Version 3.3.2

Version Description

Download this release

Release Info

Developer diegoquinteiro
Plugin Icon 128x128 Instant Articles for WP
Version 3.3.2
Comparing to
See all releases

Code changes from version 3.3.1 to 3.3.2

Files changed (109) hide show
  1. class-instant-articles-post.php +4 -0
  2. class-instant-articles-publisher.php +1 -1
  3. embeds.php +3 -3
  4. facebook-instant-articles.php +2 -2
  5. readme.txt +1 -1
  6. release.sh +6 -3
  7. vendor/composer/installed.json +51 -51
  8. vendor/facebook/facebook-instant-articles-sdk-php/src/Facebook/InstantArticles/Client/Client.php +19 -1
  9. vendor/facebook/facebook-instant-articles-sdk-php/src/Facebook/InstantArticles/Elements/Image.php +36 -0
  10. vendor/facebook/facebook-instant-articles-sdk-php/src/Facebook/InstantArticles/Elements/InstantArticle.php +59 -1
  11. vendor/facebook/facebook-instant-articles-sdk-php/src/Facebook/InstantArticles/Elements/Video.php +37 -0
  12. vendor/facebook/facebook-instant-articles-sdk-php/src/Facebook/InstantArticles/Parser/instant-articles-rules.json +1 -8
  13. vendor/facebook/facebook-instant-articles-sdk-php/src/Facebook/InstantArticles/Transformer/Rules/FooterRelatedArticlesRule.php +1 -14
  14. vendor/facebook/facebook-instant-articles-sdk-php/src/Facebook/InstantArticles/Transformer/Rules/RelatedArticlesRule.php +1 -2
  15. vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Client/ClientTest.php +48 -0
  16. vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Elements/InstantArticleTest.php +187 -1
  17. vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Parser/instant-article-example.html +1 -1
  18. vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Transformer/Example/simple-ia.html +13 -0
  19. vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Transformer/Example/simple-rules.json +37 -1
  20. vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Transformer/Example/simple.html +13 -0
  21. vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Transformer/instant-article-example-multibyte.html +1 -1
  22. vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Transformer/instant-article-example-nonutf8.html +1 -1
  23. vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Transformer/instant-article-example.html +1 -1
  24. vendor/facebook/graph-sdk/LICENSE +1 -1
  25. vendor/facebook/graph-sdk/src/Facebook/Authentication/AccessToken.php +1 -1
  26. vendor/facebook/graph-sdk/src/Facebook/Authentication/AccessTokenMetadata.php +1 -1
  27. vendor/facebook/graph-sdk/src/Facebook/Authentication/OAuth2Client.php +1 -1
  28. vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookAuthenticationException.php +1 -1
  29. vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookAuthorizationException.php +1 -1
  30. vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookClientException.php +1 -1
  31. vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookOtherException.php +1 -1
  32. vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookResponseException.php +1 -1
  33. vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookResumableUploadException.php +1 -1
  34. vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookSDKException.php +1 -1
  35. vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookServerException.php +1 -1
  36. vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookThrottleException.php +1 -1
  37. vendor/facebook/graph-sdk/src/Facebook/Facebook.php +2 -2
  38. vendor/facebook/graph-sdk/src/Facebook/FacebookApp.php +1 -1
  39. vendor/facebook/graph-sdk/src/Facebook/FacebookBatchRequest.php +1 -1
  40. vendor/facebook/graph-sdk/src/Facebook/FacebookBatchResponse.php +1 -1
  41. vendor/facebook/graph-sdk/src/Facebook/FacebookClient.php +1 -1
  42. vendor/facebook/graph-sdk/src/Facebook/FacebookRequest.php +1 -1
  43. vendor/facebook/graph-sdk/src/Facebook/FacebookResponse.php +1 -1
  44. vendor/facebook/graph-sdk/src/Facebook/FileUpload/FacebookFile.php +1 -1
  45. vendor/facebook/graph-sdk/src/Facebook/FileUpload/FacebookResumableUploader.php +1 -1
  46. vendor/facebook/graph-sdk/src/Facebook/FileUpload/FacebookTransferChunk.php +1 -1
  47. vendor/facebook/graph-sdk/src/Facebook/FileUpload/FacebookVideo.php +1 -1
  48. vendor/facebook/graph-sdk/src/Facebook/FileUpload/Mimetypes.php +2 -1
  49. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/Birthday.php +1 -1
  50. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/Collection.php +1 -1
  51. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphAchievement.php +1 -1
  52. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphAlbum.php +1 -1
  53. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphApplication.php +1 -1
  54. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphCoverPhoto.php +1 -1
  55. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphEdge.php +15 -1
  56. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphEvent.php +1 -1
  57. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphGroup.php +1 -1
  58. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphList.php +1 -1
  59. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphLocation.php +1 -1
  60. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphNode.php +1 -1
  61. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphNodeFactory.php +1 -1
  62. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphObject.php +1 -1
  63. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphObjectFactory.php +1 -1
  64. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphPage.php +1 -1
  65. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphPicture.php +1 -1
  66. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphSessionInfo.php +1 -1
  67. vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphUser.php +1 -1
  68. vendor/facebook/graph-sdk/src/Facebook/Helpers/FacebookCanvasHelper.php +1 -1
  69. vendor/facebook/graph-sdk/src/Facebook/Helpers/FacebookJavaScriptHelper.php +1 -1
  70. vendor/facebook/graph-sdk/src/Facebook/Helpers/FacebookPageTabHelper.php +1 -1
  71. vendor/facebook/graph-sdk/src/Facebook/Helpers/FacebookRedirectLoginHelper.php +1 -1
  72. vendor/facebook/graph-sdk/src/Facebook/Helpers/FacebookSignedRequestFromInputHelper.php +1 -1
  73. vendor/facebook/graph-sdk/src/Facebook/Http/GraphRawResponse.php +1 -1
  74. vendor/facebook/graph-sdk/src/Facebook/Http/RequestBodyInterface.php +1 -1
  75. vendor/facebook/graph-sdk/src/Facebook/Http/RequestBodyMultipart.php +1 -1
  76. vendor/facebook/graph-sdk/src/Facebook/Http/RequestBodyUrlEncoded.php +1 -1
  77. vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookCurl.php +1 -1
  78. vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookCurlHttpClient.php +1 -1
  79. vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookGuzzleHttpClient.php +1 -1
  80. vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookHttpClientInterface.php +1 -1
  81. vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookStream.php +1 -1
  82. vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookStreamHttpClient.php +1 -1
  83. vendor/facebook/graph-sdk/src/Facebook/HttpClients/HttpClientsFactory.php +1 -1
  84. vendor/facebook/graph-sdk/src/Facebook/PersistentData/FacebookMemoryPersistentDataHandler.php +1 -1
  85. vendor/facebook/graph-sdk/src/Facebook/PersistentData/FacebookSessionPersistentDataHandler.php +1 -1
  86. vendor/facebook/graph-sdk/src/Facebook/PersistentData/PersistentDataFactory.php +1 -1
  87. vendor/facebook/graph-sdk/src/Facebook/PersistentData/PersistentDataInterface.php +1 -1
  88. vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/McryptPseudoRandomStringGenerator.php +1 -1
  89. vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/OpenSslPseudoRandomStringGenerator.php +1 -1
  90. vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/PseudoRandomStringGeneratorFactory.php +1 -1
  91. vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/PseudoRandomStringGeneratorInterface.php +1 -1
  92. vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/PseudoRandomStringGeneratorTrait.php +1 -1
  93. vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/RandomBytesPseudoRandomStringGenerator.php +1 -1
  94. vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/UrandomPseudoRandomStringGenerator.php +1 -1
  95. vendor/facebook/graph-sdk/src/Facebook/SignedRequest.php +1 -1
  96. vendor/facebook/graph-sdk/src/Facebook/Url/FacebookUrlDetectionHandler.php +1 -1
  97. vendor/facebook/graph-sdk/src/Facebook/Url/FacebookUrlManipulator.php +1 -1
  98. vendor/facebook/graph-sdk/src/Facebook/Url/UrlDetectionInterface.php +1 -1
  99. vendor/facebook/graph-sdk/src/Facebook/autoload.php +1 -1
  100. vendor/facebook/graph-sdk/src/Facebook/polyfills.php +1 -1
  101. vendor/symfony/css-selector/Exception/SyntaxErrorException.php +5 -5
  102. vendor/symfony/css-selector/LICENSE +1 -1
  103. vendor/symfony/css-selector/Node/Specificity.php +1 -1
  104. vendor/symfony/css-selector/Parser/TokenStream.php +2 -2
  105. vendor/symfony/css-selector/XPath/Extension/NodeExtension.php +1 -1
  106. vendor/symfony/css-selector/XPath/Translator.php +2 -2
  107. vendor/symfony/css-selector/XPath/XPathExpr.php +4 -4
  108. vendor/symfony/css-selector/composer.json +1 -1
  109. wizard/class-instant-articles-option-styles.php +8 -0
class-instant-articles-post.php CHANGED
@@ -685,6 +685,10 @@ class Instant_Articles_Post {
685
  $this->instant_article->withStyle( 'default' );
686
  }
687
 
 
 
 
 
688
  $transformer->transformString( $this->instant_article, $this->get_the_content(), get_option( 'blog_charset' ) );
689
 
690
  $this->add_ads_from_settings();
685
  $this->instant_article->withStyle( 'default' );
686
  }
687
 
688
+ if ( isset( $settings_style['rtl_enabled'] ) ) {
689
+ $this->instant_article->enableRTL();
690
+ }
691
+
692
  $transformer->transformString( $this->instant_article, $this->get_the_content(), get_option( 'blog_charset' ) );
693
 
694
  $this->add_ads_from_settings();
class-instant-articles-publisher.php CHANGED
@@ -122,7 +122,7 @@ class Instant_Articles_Publisher {
122
  $published = false;
123
  } else {
124
  // Any publish status other than 'publish' means draft for the Instant Article.
125
- $published = true;
126
  }
127
 
128
  try {
122
  $published = false;
123
  } else {
124
  // Any publish status other than 'publish' means draft for the Instant Article.
125
+ $published = apply_filters( 'instant_articles_post_published', true, $post_id );
126
  }
127
 
128
  try {
embeds.php CHANGED
@@ -39,11 +39,11 @@ function instant_articles_embed_oembed_html( $html, $url, $attr, $post_id ) {
39
  $provider_name = 'twitter';
40
  } elseif ( false !== strpos( $provider_url, 'youtube.com' ) ) {
41
  $provider_name = 'youtube';
42
- } elseif( false !== strpos( $providerURL, 'vimeo.com' ) ) {
43
  $provider_name = 'vimeo';
44
- } elseif( false !== strpos( $providerURL, 'vine.co' ) ) {
45
  $provider_name = 'vine';
46
- } elseif( false !== strpos( $providerURL, 'facebook.com' ) ) {
47
  $provider_name = 'facebook';
48
  }
49
 
39
  $provider_name = 'twitter';
40
  } elseif ( false !== strpos( $provider_url, 'youtube.com' ) ) {
41
  $provider_name = 'youtube';
42
+ } elseif( false !== strpos( $provider_url, 'vimeo.com' ) ) {
43
  $provider_name = 'vimeo';
44
+ } elseif( false !== strpos( $provider_url, 'vine.co' ) ) {
45
  $provider_name = 'vine';
46
+ } elseif( false !== strpos( $provider_url, 'facebook.com' ) ) {
47
  $provider_name = 'facebook';
48
  }
49
 
facebook-instant-articles.php CHANGED
@@ -4,7 +4,7 @@
4
  * Description: Add support for Instant Articles for Facebook to your WordPress site.
5
  * Author: Automattic, Dekode, Facebook
6
  * Author URI: https://vip.wordpress.com/plugins/instant-articles/
7
- * Version: 3.3.1
8
  * Text Domain: instant-articles
9
  * License: GPLv2
10
  * License URI: http://www.gnu.org/licenses/gpl-2.0.html
@@ -61,7 +61,7 @@ if ( version_compare( PHP_VERSION, '5.4', '<' ) ) {
61
 
62
  defined( 'ABSPATH' ) || die( 'Shame on you' );
63
 
64
- define( 'IA_PLUGIN_VERSION', '3.3.1' );
65
  define( 'IA_PLUGIN_PATH_FULL', __FILE__ );
66
  define( 'IA_PLUGIN_PATH', plugin_basename( __FILE__ ) );
67
  define( 'IA_PLUGIN_FILE_BASENAME', pathinfo( __FILE__, PATHINFO_FILENAME ) );
4
  * Description: Add support for Instant Articles for Facebook to your WordPress site.
5
  * Author: Automattic, Dekode, Facebook
6
  * Author URI: https://vip.wordpress.com/plugins/instant-articles/
7
+ * Version: 3.3.2
8
  * Text Domain: instant-articles
9
  * License: GPLv2
10
  * License URI: http://www.gnu.org/licenses/gpl-2.0.html
61
 
62
  defined( 'ABSPATH' ) || die( 'Shame on you' );
63
 
64
+ define( 'IA_PLUGIN_VERSION', '3.3.2' );
65
  define( 'IA_PLUGIN_PATH_FULL', __FILE__ );
66
  define( 'IA_PLUGIN_PATH', plugin_basename( __FILE__ ) );
67
  define( 'IA_PLUGIN_FILE_BASENAME', pathinfo( __FILE__, PATHINFO_FILENAME ) );
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: trrine, olethomas, bjornjohansen, dekode, automattic, facebook
3
  Tags: instant articles, facebook, mobile
4
  Requires at least: 4.3
5
  Tested up to: 4.6
6
- Stable tag: 3.3.1
7
  License: GPLv2 or later
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
3
  Tags: instant articles, facebook, mobile
4
  Requires at least: 4.3
5
  Tested up to: 4.6
6
+ Stable tag: 3.3.2
7
  License: GPLv2 or later
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
release.sh CHANGED
@@ -16,8 +16,6 @@ ${green}Usage:${reset}
16
  ${blue}${me} [-hvs] [-c <command>] [version]${reset}
17
 
18
  ${green}Arguments:${reset}
19
- release - Creates a GitHub released based on existing version tag
20
- bump_version - Creates a new version tag
21
  version - The target version (ex: 3.2.1)
22
 
23
  ${green}Options:${reset}
@@ -27,6 +25,9 @@ ${green}Options:${reset}
27
  -c <command> Runs only a single command. Possible commands are:
28
  - bump_version: generate a new version tag on the repository
29
  - release: release a new version on GitHub
 
 
 
30
 
31
  ${green}Examples:${reset}
32
 
@@ -369,6 +370,7 @@ function release {
369
 
370
  message "Creating binary file"
371
  run composer install
 
372
  run zip -qr facebook-instant-articles-wp.zip .
373
 
374
  message "Uploading binary for release..."
@@ -421,7 +423,8 @@ function publish {
421
  tmp_dir=$(mktemp -d)
422
 
423
  message "Updating composer dependencies"
424
- composer install
 
425
 
426
  message "Checking out SVN repository..."
427
  run cd $tmp_dir
16
  ${blue}${me} [-hvs] [-c <command>] [version]${reset}
17
 
18
  ${green}Arguments:${reset}
 
 
19
  version - The target version (ex: 3.2.1)
20
 
21
  ${green}Options:${reset}
25
  -c <command> Runs only a single command. Possible commands are:
26
  - bump_version: generate a new version tag on the repository
27
  - release: release a new version on GitHub
28
+ - publish: publishes the target version to the WordPress
29
+ plugin repository
30
+
31
 
32
  ${green}Examples:${reset}
33
 
370
 
371
  message "Creating binary file"
372
  run composer install
373
+ run composer update
374
  run zip -qr facebook-instant-articles-wp.zip .
375
 
376
  message "Uploading binary for release..."
423
  tmp_dir=$(mktemp -d)
424
 
425
  message "Updating composer dependencies"
426
+ run composer install
427
+ run composer update
428
 
429
  message "Checking out SVN repository..."
430
  run cd $tmp_dir
vendor/composer/installed.json CHANGED
@@ -1,17 +1,49 @@
1
  [
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
  {
3
  "name": "facebook/graph-sdk",
4
- "version": "5.4.2",
5
- "version_normalized": "5.4.2.0",
6
  "source": {
7
  "type": "git",
8
  "url": "https://github.com/facebook/php-graph-sdk.git",
9
- "reference": "2839246e971aef150650196acbb46d47e5207370"
10
  },
11
  "dist": {
12
  "type": "zip",
13
- "url": "https://api.github.com/repos/facebook/php-graph-sdk/zipball/2839246e971aef150650196acbb46d47e5207370",
14
- "reference": "2839246e971aef150650196acbb46d47e5207370",
15
  "shasum": ""
16
  },
17
  "require": {
@@ -26,7 +58,7 @@
26
  "guzzlehttp/guzzle": "Allows for implementation of the Guzzle HTTP client",
27
  "paragonie/random_compat": "Provides a better CSPRNG option in PHP 5"
28
  },
29
- "time": "2016-11-15 14:34:16",
30
  "type": "library",
31
  "extra": {
32
  "branch-alias": {
@@ -59,61 +91,29 @@
59
  "sdk"
60
  ]
61
  },
62
- {
63
- "name": "apache/log4php",
64
- "version": "2.3.0",
65
- "version_normalized": "2.3.0.0",
66
- "source": {
67
- "type": "git",
68
- "url": "https://git-wip-us.apache.org/repos/asf/logging-log4php.git",
69
- "reference": "8c6df2481cd68d0d211d38f700406c5f0a9de0c2"
70
- },
71
- "require": {
72
- "php": ">=5.2.7"
73
- },
74
- "time": "2012-10-26 09:13:25",
75
- "type": "library",
76
- "installation-source": "source",
77
- "autoload": {
78
- "classmap": [
79
- "src/main/php/"
80
- ]
81
- },
82
- "notification-url": "https://packagist.org/downloads/",
83
- "license": [
84
- "Apache-2.0"
85
- ],
86
- "description": "A versatile logging framework for PHP",
87
- "homepage": "http://logging.apache.org/log4php/",
88
- "keywords": [
89
- "log",
90
- "logging",
91
- "php"
92
- ]
93
- },
94
  {
95
  "name": "symfony/css-selector",
96
- "version": "v3.1.7",
97
- "version_normalized": "3.1.7.0",
98
  "source": {
99
  "type": "git",
100
  "url": "https://github.com/symfony/css-selector.git",
101
- "reference": "a37b3359566415a91cba55a2d95820b3fa1a9658"
102
  },
103
  "dist": {
104
  "type": "zip",
105
- "url": "https://api.github.com/repos/symfony/css-selector/zipball/a37b3359566415a91cba55a2d95820b3fa1a9658",
106
- "reference": "a37b3359566415a91cba55a2d95820b3fa1a9658",
107
  "shasum": ""
108
  },
109
  "require": {
110
  "php": ">=5.5.9"
111
  },
112
- "time": "2016-11-03 08:04:31",
113
  "type": "library",
114
  "extra": {
115
  "branch-alias": {
116
- "dev-master": "3.1-dev"
117
  }
118
  },
119
  "installation-source": "dist",
@@ -148,17 +148,17 @@
148
  },
149
  {
150
  "name": "facebook/facebook-instant-articles-sdk-php",
151
- "version": "v1.5.3",
152
- "version_normalized": "1.5.3.0",
153
  "source": {
154
  "type": "git",
155
  "url": "https://github.com/facebook/facebook-instant-articles-sdk-php.git",
156
- "reference": "4210c2b78a4d28b0c56c0e8575db47d30e48ef54"
157
  },
158
  "dist": {
159
  "type": "zip",
160
- "url": "https://api.github.com/repos/facebook/facebook-instant-articles-sdk-php/zipball/4210c2b78a4d28b0c56c0e8575db47d30e48ef54",
161
- "reference": "4210c2b78a4d28b0c56c0e8575db47d30e48ef54",
162
  "shasum": ""
163
  },
164
  "require": {
@@ -172,7 +172,7 @@
172
  "phpunit/phpunit": "^4.8",
173
  "squizlabs/php_codesniffer": "^2.6.0"
174
  },
175
- "time": "2016-11-29 15:38:03",
176
  "type": "library",
177
  "installation-source": "dist",
178
  "autoload": {
1
  [
2
+ {
3
+ "name": "apache/log4php",
4
+ "version": "2.3.0",
5
+ "version_normalized": "2.3.0.0",
6
+ "source": {
7
+ "type": "git",
8
+ "url": "https://git-wip-us.apache.org/repos/asf/logging-log4php.git",
9
+ "reference": "8c6df2481cd68d0d211d38f700406c5f0a9de0c2"
10
+ },
11
+ "require": {
12
+ "php": ">=5.2.7"
13
+ },
14
+ "time": "2012-10-26 09:13:25",
15
+ "type": "library",
16
+ "installation-source": "source",
17
+ "autoload": {
18
+ "classmap": [
19
+ "src/main/php/"
20
+ ]
21
+ },
22
+ "notification-url": "https://packagist.org/downloads/",
23
+ "license": [
24
+ "Apache-2.0"
25
+ ],
26
+ "description": "A versatile logging framework for PHP",
27
+ "homepage": "http://logging.apache.org/log4php/",
28
+ "keywords": [
29
+ "log",
30
+ "logging",
31
+ "php"
32
+ ]
33
+ },
34
  {
35
  "name": "facebook/graph-sdk",
36
+ "version": "5.4.4",
37
+ "version_normalized": "5.4.4.0",
38
  "source": {
39
  "type": "git",
40
  "url": "https://github.com/facebook/php-graph-sdk.git",
41
+ "reference": "5d0c4865e80e231d48a4571841bd018828fe58e1"
42
  },
43
  "dist": {
44
  "type": "zip",
45
+ "url": "https://api.github.com/repos/facebook/php-graph-sdk/zipball/5d0c4865e80e231d48a4571841bd018828fe58e1",
46
+ "reference": "5d0c4865e80e231d48a4571841bd018828fe58e1",
47
  "shasum": ""
48
  },
49
  "require": {
58
  "guzzlehttp/guzzle": "Allows for implementation of the Guzzle HTTP client",
59
  "paragonie/random_compat": "Provides a better CSPRNG option in PHP 5"
60
  },
61
+ "time": "2017-01-19 15:42:20",
62
  "type": "library",
63
  "extra": {
64
  "branch-alias": {
91
  "sdk"
92
  ]
93
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
94
  {
95
  "name": "symfony/css-selector",
96
+ "version": "v3.2.3",
97
+ "version_normalized": "3.2.3.0",
98
  "source": {
99
  "type": "git",
100
  "url": "https://github.com/symfony/css-selector.git",
101
+ "reference": "f0e628f04fc055c934b3211cfabdb1c59eefbfaa"
102
  },
103
  "dist": {
104
  "type": "zip",
105
+ "url": "https://api.github.com/repos/symfony/css-selector/zipball/f0e628f04fc055c934b3211cfabdb1c59eefbfaa",
106
+ "reference": "f0e628f04fc055c934b3211cfabdb1c59eefbfaa",
107
  "shasum": ""
108
  },
109
  "require": {
110
  "php": ">=5.5.9"
111
  },
112
+ "time": "2017-01-02 20:32:22",
113
  "type": "library",
114
  "extra": {
115
  "branch-alias": {
116
+ "dev-master": "3.2-dev"
117
  }
118
  },
119
  "installation-source": "dist",
148
  },
149
  {
150
  "name": "facebook/facebook-instant-articles-sdk-php",
151
+ "version": "v1.5.5",
152
+ "version_normalized": "1.5.5.0",
153
  "source": {
154
  "type": "git",
155
  "url": "https://github.com/facebook/facebook-instant-articles-sdk-php.git",
156
+ "reference": "3d7782850625ab4025d6c1a1bb5fc8a6cf2fc682"
157
  },
158
  "dist": {
159
  "type": "zip",
160
+ "url": "https://api.github.com/repos/facebook/facebook-instant-articles-sdk-php/zipball/3d7782850625ab4025d6c1a1bb5fc8a6cf2fc682",
161
+ "reference": "3d7782850625ab4025d6c1a1bb5fc8a6cf2fc682",
162
  "shasum": ""
163
  },
164
  "require": {
172
  "phpunit/phpunit": "^4.8",
173
  "squizlabs/php_codesniffer": "^2.6.0"
174
  },
175
+ "time": "2017-02-13 18:28:26",
176
  "type": "library",
177
  "installation-source": "dist",
178
  "autoload": {
vendor/facebook/facebook-instant-articles-sdk-php/src/Facebook/InstantArticles/Client/Client.php CHANGED
@@ -88,7 +88,7 @@ class Client
88
  *
89
  * @return int The submission status ID. It is not the article ID. (Since 1.3.0)
90
  */
91
- public function importArticle($article, $published = false)
92
  {
93
  Type::enforce($article, 'Facebook\InstantArticles\Elements\InstantArticleInterface');
94
  Type::enforce($published, Type::BOOLEAN);
@@ -103,9 +103,27 @@ class Client
103
  'development_mode' => $this->developmentMode,
104
  ]);
105
 
 
 
 
 
 
106
  return $response->getGraphNode()->getField('id');
107
  }
108
 
 
 
 
 
 
 
 
 
 
 
 
 
 
109
  /**
110
  * Removes an article from your Instant Articles library.
111
  *
88
  *
89
  * @return int The submission status ID. It is not the article ID. (Since 1.3.0)
90
  */
91
+ public function importArticle($article, $published = false, $forceRescrape = false)
92
  {
93
  Type::enforce($article, 'Facebook\InstantArticles\Elements\InstantArticleInterface');
94
  Type::enforce($published, Type::BOOLEAN);
103
  'development_mode' => $this->developmentMode,
104
  ]);
105
 
106
+ if ($forceRescrape) {
107
+ // Re-scrape Graph object for article URL
108
+ $this->scrapeArticleURL($article->getCanonicalURL());
109
+ }
110
+
111
  return $response->getGraphNode()->getField('id');
112
  }
113
 
114
+ /**
115
+ * Scrape Graph object for given URL
116
+ *
117
+ * @param string $canonicalURL The URL that will be scraped.
118
+ */
119
+ private function scrapeArticleURL($canonicalURL)
120
+ {
121
+ $this->facebook->post('/', [
122
+ 'id' => $canonicalURL,
123
+ 'scrape' => 'true',
124
+ ]);
125
+ }
126
+
127
  /**
128
  * Removes an article from your Instant Articles library.
129
  *
vendor/facebook/facebook-instant-articles-sdk-php/src/Facebook/InstantArticles/Elements/Image.php CHANGED
@@ -40,6 +40,16 @@ class Image extends Audible implements Container
40
  const FULLSCREEN = 'fullscreen';
41
  const NON_INTERACTIVE = 'non-interactive';
42
 
 
 
 
 
 
 
 
 
 
 
43
  /**
44
  * @var Caption The caption for Image
45
  */
@@ -86,6 +96,8 @@ class Image extends Audible implements Container
86
  */
87
  private function __construct()
88
  {
 
 
89
  }
90
 
91
  /**
@@ -384,4 +396,28 @@ class Image extends Audible implements Container
384
 
385
  return $children;
386
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
387
  }
40
  const FULLSCREEN = 'fullscreen';
41
  const NON_INTERACTIVE = 'non-interactive';
42
 
43
+ /**
44
+ * @var boolean marks if any created image will have likes enabled by default
45
+ */
46
+ public static $defaultLikeEnabled = false;
47
+
48
+ /**
49
+ * @var boolean marks if any created image will have comments enabled by default
50
+ */
51
+ public static $defaultCommentEnabled = false;
52
+
53
  /**
54
  * @var Caption The caption for Image
55
  */
96
  */
97
  private function __construct()
98
  {
99
+ $this->isLikeEnabled = self::$defaultLikeEnabled;
100
+ $this->isCommentsEnabled = self::$defaultCommentEnabled;
101
  }
102
 
103
  /**
396
 
397
  return $children;
398
  }
399
+
400
+ /**
401
+ * Modify the default setup to enable/disable likes in images
402
+ *
403
+ * WARNING this is not Thread-safe, so if you are using pthreads or any other multithreaded engine,
404
+ * this might not work as expected. (you will need to set this in all working threads manually)
405
+ * @param boolean $enabled inform true to enable likes on images per default or false to disable like on images.
406
+ */
407
+ public static function setDefaultLikeEnabled($enabled)
408
+ {
409
+ self::$defaultLikeEnabled = $enabled;
410
+ }
411
+
412
+ /**
413
+ * Modify the default setup to enable/disable comments in images
414
+ *
415
+ * WARNING this is not Thread-safe, so if you are using pthreads or any other multithreaded engine,
416
+ * this might not work as expected. (you will need to set this in all working threads manually)
417
+ * @param boolean $enabled inform true to enable comments on images per default or false to disable commenting on images.
418
+ */
419
+ public static function setDefaultCommentEnabled($enabled)
420
+ {
421
+ self::$defaultCommentEnabled = $enabled;
422
+ }
423
  }
vendor/facebook/facebook-instant-articles-sdk-php/src/Facebook/InstantArticles/Elements/InstantArticle.php CHANGED
@@ -34,7 +34,7 @@ use Facebook\InstantArticles\Validators\Type;
34
 
35
  class InstantArticle extends Element implements Container, InstantArticleInterface
36
  {
37
- const CURRENT_VERSION = '1.5.3';
38
 
39
  /**
40
  * The meta properties that are used on <head>
@@ -218,6 +218,64 @@ class InstantArticle extends Element implements Container, InstantArticleInterfa
218
  return $this;
219
  }
220
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
221
  /**
222
  * Adds new child elements to this InstantArticle
223
  *
34
 
35
  class InstantArticle extends Element implements Container, InstantArticleInterface
36
  {
37
+ const CURRENT_VERSION = '1.5.5';
38
 
39
  /**
40
  * The meta properties that are used on <head>
218
  return $this;
219
  }
220
 
221
+ /**
222
+ * Replace all the children within this InstantArticle
223
+ *
224
+ * @param Element[] $children Array of elements replacing the original.
225
+ *
226
+ * @return $this
227
+ */
228
+ public function withChildren($children)
229
+ {
230
+ Type::enforceArrayOf(
231
+ $children,
232
+ [
233
+ Ad::getClassName(),
234
+ Analytics::getClassName(),
235
+ AnimatedGIF::getClassName(),
236
+ Audio::getClassName(),
237
+ Blockquote::getClassName(),
238
+ Image::getClassName(),
239
+ H1::getClassName(),
240
+ H2::getClassName(),
241
+ Interactive::getClassName(),
242
+ ListElement::getClassName(),
243
+ Map::getClassName(),
244
+ Paragraph::getClassName(),
245
+ Pullquote::getClassName(),
246
+ RelatedArticles::getClassName(),
247
+ Slideshow::getClassName(),
248
+ SocialEmbed::getClassName(),
249
+ Video::getClassName()
250
+ ]
251
+ );
252
+ $this->children = $children;
253
+
254
+ return $this;
255
+ }
256
+
257
+ /**
258
+ * Replace all the children within this InstantArticle
259
+ *
260
+ * @param Type::INTEGER $index The index of the element to be deleted
261
+ * in the array of children.
262
+ *
263
+ * @return $this
264
+ */
265
+ public function deleteChild($index)
266
+ {
267
+ Type::enforce($index, Type::INTEGER);
268
+ $children = [];
269
+ foreach ($this->children as $childIndex => $child) {
270
+ if ($childIndex != $index) {
271
+ $children[] = $child;
272
+ }
273
+ }
274
+ $this->children = $children;
275
+
276
+ return $this;
277
+ }
278
+
279
  /**
280
  * Adds new child elements to this InstantArticle
281
  *
vendor/facebook/facebook-instant-articles-sdk-php/src/Facebook/InstantArticles/Elements/Video.php CHANGED
@@ -44,6 +44,16 @@ class Video extends Element implements Container
44
  const LOOP = 'loop';
45
  const DATA_FADE = 'data-fade';
46
 
 
 
 
 
 
 
 
 
 
 
47
  /**
48
  * @var Caption The caption for Video
49
  */
@@ -114,6 +124,8 @@ class Video extends Element implements Container
114
 
115
  private function __construct()
116
  {
 
 
117
  }
118
 
119
  /**
@@ -433,6 +445,31 @@ class Video extends Element implements Container
433
  return $this->geoTag;
434
  }
435
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
436
  /**
437
  * Structure and create the full Video in a XML format DOMElement.
438
  *
44
  const LOOP = 'loop';
45
  const DATA_FADE = 'data-fade';
46
 
47
+ /**
48
+ * @var boolean marks if any created image will have likes enabled by default
49
+ */
50
+ private static $defaultLikeEnabled = false;
51
+
52
+ /**
53
+ * @var boolean marks if any created image will have comments enabled by default
54
+ */
55
+ private static $defaultCommentEnabled = false;
56
+
57
  /**
58
  * @var Caption The caption for Video
59
  */
124
 
125
  private function __construct()
126
  {
127
+ $this->isLikeEnabled = self::$defaultLikeEnabled;
128
+ $this->isCommentsEnabled = self::$defaultCommentEnabled;
129
  }
130
 
131
  /**
445
  return $this->geoTag;
446
  }
447
 
448
+ /**
449
+ * Modify the default setup to enable/disable likes in videos
450
+ *
451
+ * WARNING this is not Thread-safe, so if you are using pthreads or any other multithreaded engine,
452
+ * this might not work as expected. (you will need to set this in all working threads manually)
453
+ * @param boolean $enabled inform true to enable likes on videos per default or false to disable like on videos.
454
+ */
455
+ public static function setDefaultLikeEnabled($enabled)
456
+ {
457
+ self::$defaultLikeEnabled = $enabled;
458
+ }
459
+
460
+ /**
461
+ * Modify the default setup to enable/disable comments in videos
462
+ *
463
+ * WARNING this is not Thread-safe, so if you are using pthreads or any other multithreaded engine,
464
+ * this might not work as expected. (you will need to set this in all working threads manually)
465
+ * @param boolean $enabled inform true to enable comments on videos per default or false to disable commenting on videos.
466
+ */
467
+ public static function setDefaultCommentEnabled($enabled)
468
+ {
469
+ self::$defaultCommentEnabled = $enabled;
470
+ }
471
+
472
+
473
  /**
474
  * Structure and create the full Video in a XML format DOMElement.
475
  *
vendor/facebook/facebook-instant-articles-sdk-php/src/Facebook/InstantArticles/Parser/instant-articles-rules.json CHANGED
@@ -146,14 +146,7 @@
146
  },
147
  {
148
  "class": "FooterRelatedArticlesRule",
149
- "selector" : "ul.op-related-articles",
150
- "properties" : {
151
- "related.title" : {
152
- "type" : "string",
153
- "selector" : "ul.op-related-articles",
154
- "attribute": "title"
155
- }
156
- }
157
  },
158
  {
159
  "class": "RelatedItemRule",
146
  },
147
  {
148
  "class": "FooterRelatedArticlesRule",
149
+ "selector" : "ul.op-related-articles"
 
 
 
 
 
 
 
150
  },
151
  {
152
  "class": "RelatedItemRule",
vendor/facebook/facebook-instant-articles-sdk-php/src/Facebook/InstantArticles/Transformer/Rules/FooterRelatedArticlesRule.php CHANGED
@@ -13,8 +13,6 @@ use Facebook\InstantArticles\Elements\Footer;
13
 
14
  class FooterRelatedArticlesRule extends ConfigurationSelectorRule
15
  {
16
- const PROPERTY_TITLE = 'related.title';
17
-
18
  public function getContextClass()
19
  {
20
  return Footer::getClassName();
@@ -30,24 +28,13 @@ class FooterRelatedArticlesRule extends ConfigurationSelectorRule
30
  $related_articles_rule = self::create();
31
  $related_articles_rule->withSelector($configuration['selector']);
32
 
33
- $related_articles_rule->withProperty(
34
- self::PROPERTY_TITLE,
35
- self::retrieveProperty($configuration, self::PROPERTY_TITLE)
36
- );
37
-
38
  return $related_articles_rule;
39
  }
40
 
41
  public function apply($transformer, $footer, $node)
42
  {
43
  $related_articles = RelatedArticles::create();
44
-
45
- // Builds the image
46
- $title = $this->getProperty(self::PROPERTY_TITLE, $node);
47
- if ($title) {
48
- $related_articles->withTitle($title);
49
- $footer->withRelatedArticles($related_articles);
50
- }
51
 
52
  $transformer->transform($related_articles, $node);
53
 
13
 
14
  class FooterRelatedArticlesRule extends ConfigurationSelectorRule
15
  {
 
 
16
  public function getContextClass()
17
  {
18
  return Footer::getClassName();
28
  $related_articles_rule = self::create();
29
  $related_articles_rule->withSelector($configuration['selector']);
30
 
 
 
 
 
 
31
  return $related_articles_rule;
32
  }
33
 
34
  public function apply($transformer, $footer, $node)
35
  {
36
  $related_articles = RelatedArticles::create();
37
+ $footer->withRelatedArticles($related_articles);
 
 
 
 
 
 
38
 
39
  $transformer->transform($related_articles, $node);
40
 
vendor/facebook/facebook-instant-articles-sdk-php/src/Facebook/InstantArticles/Transformer/Rules/RelatedArticlesRule.php CHANGED
@@ -42,12 +42,11 @@ class RelatedArticlesRule extends ConfigurationSelectorRule
42
  {
43
  $related_articles = RelatedArticles::create();
44
 
45
- // Builds the image
46
  $title = $this->getProperty(self::PROPERTY_TITLE, $node);
47
  if ($title) {
48
  $related_articles->withTitle($title);
49
- $instant_article->addChild($related_articles);
50
  }
 
51
 
52
  $transformer->transform($related_articles, $node);
53
 
42
  {
43
  $related_articles = RelatedArticles::create();
44
 
 
45
  $title = $this->getProperty(self::PROPERTY_TITLE, $node);
46
  if ($title) {
47
  $related_articles->withTitle($title);
 
48
  }
49
+ $instant_article->addChild($related_articles);
50
 
51
  $transformer->transform($related_articles, $node);
52
 
vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Client/ClientTest.php CHANGED
@@ -108,6 +108,54 @@ class ClientTest extends \PHPUnit_Framework_TestCase
108
  $this->assertEquals($expectedSubmissionStatusID, $resultSubmissionStatusID);
109
  }
110
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
111
  /**
112
  * Tests removing an article from an Instant Articles library.
113
  *
108
  $this->assertEquals($expectedSubmissionStatusID, $resultSubmissionStatusID);
109
  }
110
 
111
+ /**
112
+ * Tests that a re-scrape is performed when requested at article import.
113
+ */
114
+ public function testImportArticleRescrape()
115
+ {
116
+ $expectedSubmissionStatusID = 1;
117
+
118
+ $serverResponseMock =
119
+ $this->getMockBuilder('Facebook\FacebookResponse')
120
+ ->disableOriginalConstructor()
121
+ ->getMock();
122
+ $graphNodeMock =
123
+ $this->getMockBuilder('Facebook\GraphNodes\GraphNode')
124
+ ->disableOriginalConstructor()
125
+ ->getMock();
126
+ $serverResponseMock
127
+ ->expects($this->once())
128
+ ->method('getGraphNode')
129
+ ->willReturn($graphNodeMock);
130
+ $graphNodeMock
131
+ ->expects($this->once())
132
+ ->method('getField')
133
+ ->with('id')
134
+ ->willReturn($expectedSubmissionStatusID);
135
+
136
+ $this->facebook
137
+ ->expects($this->at(0))
138
+ ->method('post')
139
+ ->with('PAGE_ID' . Client::EDGE_NAME, [
140
+ 'html_source' => $this->article->render(),
141
+ 'published' => true,
142
+ 'development_mode' => false,
143
+ ])
144
+ ->willReturn($serverResponseMock);
145
+
146
+ $this->facebook
147
+ ->expects($this->at(1))
148
+ ->method('post')
149
+ ->with('/', [
150
+ 'id' => $this->article->getCanonicalURL(),
151
+ 'scrape' => 'true',
152
+ ])
153
+ ->willReturn($serverResponseMock);
154
+
155
+ $resultSubmissionStatusID = $this->client->importArticle($this->article, true, true);
156
+ $this->assertEquals($expectedSubmissionStatusID, $resultSubmissionStatusID);
157
+ }
158
+
159
  /**
160
  * Tests removing an article from an Instant Articles library.
161
  *
vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Elements/InstantArticleTest.php CHANGED
@@ -454,7 +454,7 @@ class InstantArticleTest extends \PHPUnit_Framework_TestCase
454
  '<link rel="canonical" href="http://wp.localtest.me/2016/04/12/stress-on-earth/"/>'.
455
  '<meta charset="utf-8"/>'.
456
  '<meta property="op:generator" content="facebook-instant-articles-sdk-php"/>'.
457
- '<meta property="op:generator:version" content="1.5.2"/>'.
458
  '<meta property="op:markup_version" content="v1.0"/>'.
459
  '</head>'.
460
  '<body>'.
@@ -473,4 +473,190 @@ class InstantArticleTest extends \PHPUnit_Framework_TestCase
473
 
474
  $this->assertEquals($expected, $result);
475
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
476
  }
454
  '<link rel="canonical" href="http://wp.localtest.me/2016/04/12/stress-on-earth/"/>'.
455
  '<meta charset="utf-8"/>'.
456
  '<meta property="op:generator" content="facebook-instant-articles-sdk-php"/>'.
457
+ '<meta property="op:generator:version" content="'.InstantArticle::CURRENT_VERSION.'"/>'.
458
  '<meta property="op:markup_version" content="v1.0"/>'.
459
  '</head>'.
460
  '<body>'.
473
 
474
  $this->assertEquals($expected, $result);
475
  }
476
+
477
+ public function testDeleteChildren()
478
+ {
479
+ $article =
480
+ InstantArticle::create()
481
+ ->withCanonicalURL('http://www.facebook-IA-test.com/category/test')
482
+ ->enableAutomaticAdPlacement()
483
+ ->withHeader(
484
+ Header::create()
485
+ ->withTitle(
486
+ H1::create()->appendText('A good test')
487
+ )
488
+ ->addAuthor(
489
+ Author::create()->withName('Dan')
490
+ )
491
+ ->withPublishTime(
492
+ Time::create(Time::PUBLISHED)
493
+ ->withDatetime(
494
+ \DateTime::createFromFormat(
495
+ 'j-M-Y G:i:s',
496
+ '09-Jan-2016 20:30:00'
497
+ )
498
+ )
499
+ )
500
+ )
501
+ ->addChild(
502
+ Paragraph::create()
503
+ ->appendText('Just testing a deletion.')
504
+ )
505
+ ->addChild(
506
+ Paragraph::create()
507
+ ->appendText('This should not render afterwards.')
508
+ );
509
+ $article->deleteChild(1);
510
+ $result = $article->render();
511
+
512
+ $expected =
513
+ '<!doctype html>'.
514
+ '<html>'.
515
+ '<head>'.
516
+ '<link rel="canonical" href="http://www.facebook-IA-test.com/category/test"/>'.
517
+ '<meta charset="utf-8"/>'.
518
+ '<meta property="op:generator" content="facebook-instant-articles-sdk-php"/>'.
519
+ '<meta property="op:generator:version" content="'.InstantArticle::CURRENT_VERSION.'"/>'.
520
+ '<meta property="op:markup_version" content="v1.0"/>'.
521
+ '</head>'.
522
+ '<body>'.
523
+ '<article>'.
524
+ '<header>'.
525
+ '<h1>A good test</h1>'.
526
+ '<time class="op-published" datetime="2016-01-09T20:30:00+00:00">January 9th, 8:30pm</time>'.
527
+ '<address>'.
528
+ '<a>Dan</a>'.
529
+ '</address>'.
530
+ '</header>'.
531
+ '<p>Just testing a deletion.</p>'.
532
+ '</article>'.
533
+ '</body>'.
534
+ '</html>';
535
+
536
+ $this->assertEquals($expected, $result);
537
+ }
538
+
539
+ public function testDeleteOnlyChild()
540
+ {
541
+ $article =
542
+ InstantArticle::create()
543
+ ->withCanonicalURL('http://www.facebook-IA-test.com/category/test')
544
+ ->enableAutomaticAdPlacement()
545
+ ->withHeader(
546
+ Header::create()
547
+ ->withTitle(
548
+ H1::create()->appendText('A good test')
549
+ )
550
+ ->addAuthor(
551
+ Author::create()->withName('Dan')
552
+ )
553
+ ->withPublishTime(
554
+ Time::create(Time::PUBLISHED)
555
+ ->withDatetime(
556
+ \DateTime::createFromFormat(
557
+ 'j-M-Y G:i:s',
558
+ '09-Jan-2016 20:30:00'
559
+ )
560
+ )
561
+ )
562
+ )
563
+ ->addChild(
564
+ Paragraph::create()
565
+ ->appendText('Single paragraph to delete.')
566
+ );
567
+ $article->deleteChild(0);
568
+ $result = $article->render();
569
+
570
+ $expected =
571
+ '<!doctype html>'.
572
+ '<html>'.
573
+ '<head>'.
574
+ '<link rel="canonical" href="http://www.facebook-IA-test.com/category/test"/>'.
575
+ '<meta charset="utf-8"/>'.
576
+ '<meta property="op:generator" content="facebook-instant-articles-sdk-php"/>'.
577
+ '<meta property="op:generator:version" content="'.InstantArticle::CURRENT_VERSION.'"/>'.
578
+ '<meta property="op:markup_version" content="v1.0"/>'.
579
+ '</head>'.
580
+ '<body>'.
581
+ '<article>'.
582
+ '<header>'.
583
+ '<h1>A good test</h1>'.
584
+ '<time class="op-published" datetime="2016-01-09T20:30:00+00:00">January 9th, 8:30pm</time>'.
585
+ '<address>'.
586
+ '<a>Dan</a>'.
587
+ '</address>'.
588
+ '</header>'.
589
+ '</article>'.
590
+ '</body>'.
591
+ '</html>';
592
+
593
+ $this->assertEquals($expected, $result);
594
+ }
595
+
596
+ public function testReplaceChildren()
597
+ {
598
+ $article =
599
+ InstantArticle::create()
600
+ ->withCanonicalURL('http://www.facebook-IA-test.com/category/test')
601
+ ->enableAutomaticAdPlacement()
602
+ ->withHeader(
603
+ Header::create()
604
+ ->withTitle(
605
+ H1::create()->appendText('A replacing test')
606
+ )
607
+ ->addAuthor(
608
+ Author::create()->withName('Dan')
609
+ )
610
+ ->withPublishTime(
611
+ Time::create(Time::PUBLISHED)
612
+ ->withDatetime(
613
+ \DateTime::createFromFormat(
614
+ 'j-M-Y G:i:s',
615
+ '09-Jan-2016 20:30:00'
616
+ )
617
+ )
618
+ )
619
+ )
620
+ ->addChild(
621
+ Paragraph::create()
622
+ ->appendText('Ye olde body')
623
+ );
624
+
625
+ $newBody = array(
626
+ Paragraph::create()
627
+ ->appendText('The new body.'),
628
+ Paragraph::create()
629
+ ->appendText('With two paragraphs!')
630
+ );
631
+
632
+ $article->withChildren($newBody);
633
+ $result = $article->render();
634
+
635
+ $expected =
636
+ '<!doctype html>'.
637
+ '<html>'.
638
+ '<head>'.
639
+ '<link rel="canonical" href="http://www.facebook-IA-test.com/category/test"/>'.
640
+ '<meta charset="utf-8"/>'.
641
+ '<meta property="op:generator" content="facebook-instant-articles-sdk-php"/>'.
642
+ '<meta property="op:generator:version" content="'.InstantArticle::CURRENT_VERSION.'"/>'.
643
+ '<meta property="op:markup_version" content="v1.0"/>'.
644
+ '</head>'.
645
+ '<body>'.
646
+ '<article>'.
647
+ '<header>'.
648
+ '<h1>A replacing test</h1>'.
649
+ '<time class="op-published" datetime="2016-01-09T20:30:00+00:00">January 9th, 8:30pm</time>'.
650
+ '<address>'.
651
+ '<a>Dan</a>'.
652
+ '</address>'.
653
+ '</header>'.
654
+ '<p>The new body.</p>'.
655
+ '<p>With two paragraphs!</p>'.
656
+ '</article>'.
657
+ '</body>'.
658
+ '</html>';
659
+
660
+ $this->assertEquals($expected, $result);
661
+ }
662
  }
vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Parser/instant-article-example.html CHANGED
@@ -182,7 +182,7 @@
182
  <p>Some plaintext credits to<a href="http://facebook.com/author" rel="facebook">Author</a></p>
183
  <p>Paragraph text as credits</p>
184
  </aside>
185
- <ul class="op-related-articles" title="The related ones in the footer">
186
  <li>
187
  <a href="http://example.com/article.html"></a>
188
  </li>
182
  <p>Some plaintext credits to<a href="http://facebook.com/author" rel="facebook">Author</a></p>
183
  <p>Paragraph text as credits</p>
184
  </aside>
185
+ <ul class="op-related-articles">
186
  <li>
187
  <a href="http://example.com/article.html"></a>
188
  </li>
vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Transformer/Example/simple-ia.html CHANGED
@@ -48,6 +48,19 @@
48
  <img src="http://domain.com/image-header.png?suffix=yes"/>
49
  <figcaption>Some amazing moment captured by Photographer</figcaption>
50
  </figure>
 
 
 
 
 
 
 
 
 
 
 
 
 
51
  </article>
52
  </body>
53
  </html>
48
  <img src="http://domain.com/image-header.png?suffix=yes"/>
49
  <figcaption>Some amazing moment captured by Photographer</figcaption>
50
  </figure>
51
+ <footer>
52
+ <ul class="op-related-articles">
53
+ <li>
54
+ <a href="http://example.com/article.html"></a>
55
+ </li>
56
+ <li data-sponsored="true">
57
+ <a href="http://example.com/sponsored-article.html"></a>
58
+ </li>
59
+ <li>
60
+ <a href="http://example.com/another-article.html"></a>
61
+ </li>
62
+ </ul>
63
+ </footer>
64
  </article>
65
  </body>
66
  </html>
vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Transformer/Example/simple-rules.json CHANGED
@@ -157,6 +157,42 @@
157
  "selector" : "*"
158
  }
159
  }
160
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
161
  ]
162
  }
157
  "selector" : "*"
158
  }
159
  }
160
+ },
161
+
162
+ {
163
+ "class" : "FooterRule",
164
+ "selector" : "footer"
165
+ },
166
+ {
167
+ "class" : "RelatedArticlesRule",
168
+ "selector" : "ul.op-related-articles",
169
+ "properties" : {
170
+ "related.title" : {
171
+ "type" : "exists",
172
+ "selector" : "ul.op-related-articles",
173
+ "attribute" : "title"
174
+ }
175
+ }
176
+ },
177
+ {
178
+ "class" : "FooterRelatedArticlesRule",
179
+ "selector" : "ul.op-related-articles"
180
+ },
181
+ {
182
+ "class" : "RelatedItemRule",
183
+ "selector" : "li",
184
+ "properties" : {
185
+ "related.sponsored" : {
186
+ "type" : "exists",
187
+ "selector" : "li",
188
+ "attribute": "data-sponsored"
189
+ },
190
+ "related.url" : {
191
+ "type" : "string",
192
+ "selector" : "a",
193
+ "attribute" : "href"
194
+ }
195
+ }
196
+ }
197
  ]
198
  }
vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Transformer/Example/simple.html CHANGED
@@ -37,5 +37,18 @@
37
  <img src="//domain.com/image-header.png" />
38
  <div class="image-caption">Some amazing moment captured by Photographer</div>
39
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
40
  </body>
41
  </html>
37
  <img src="//domain.com/image-header.png" />
38
  <div class="image-caption">Some amazing moment captured by Photographer</div>
39
  </div>
40
+ <footer>
41
+ <ul class="op-related-articles">
42
+ <li>
43
+ <a href="http://example.com/article.html"></a>
44
+ </li>
45
+ <li data-sponsored="true">
46
+ <a href="http://example.com/sponsored-article.html"></a>
47
+ </li>
48
+ <li>
49
+ <a href="http://example.com/another-article.html"></a>
50
+ </li>
51
+ </ul>
52
+ </footer>
53
  </body>
54
  </html>
vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Transformer/instant-article-example-multibyte.html CHANGED
@@ -187,7 +187,7 @@
187
  <p><a href="http://facebook.com/author" rel="facebook">著者</a>へのクレジット情報</p>
188
  <p>クレジットとしてのパラグラフ</p>
189
  </aside>
190
- <ul class="op-related-articles" title="The related ones in the footer">
191
  <li>
192
  <a href="http://example.com/article.html"></a>
193
  </li>
187
  <p><a href="http://facebook.com/author" rel="facebook">著者</a>へのクレジット情報</p>
188
  <p>クレジットとしてのパラグラフ</p>
189
  </aside>
190
+ <ul class="op-related-articles">
191
  <li>
192
  <a href="http://example.com/article.html"></a>
193
  </li>
vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Transformer/instant-article-example-nonutf8.html CHANGED
@@ -187,7 +187,7 @@
187
  <p><a href="http://facebook.com/author" rel="facebook">����</a>�ؤΥ��쥸�åȾ���</p>
188
  <p>���쥸�åȤȤ��ƤΥѥ饰���</p>
189
  </aside>
190
- <ul class="op-related-articles" title="The related ones in the footer">
191
  <li>
192
  <a href="http://example.com/article.html"></a>
193
  </li>
187
  <p><a href="http://facebook.com/author" rel="facebook">����</a>�ؤΥ��쥸�åȾ���</p>
188
  <p>���쥸�åȤȤ��ƤΥѥ饰���</p>
189
  </aside>
190
+ <ul class="op-related-articles">
191
  <li>
192
  <a href="http://example.com/article.html"></a>
193
  </li>
vendor/facebook/facebook-instant-articles-sdk-php/tests/Facebook/InstantArticles/Transformer/instant-article-example.html CHANGED
@@ -187,7 +187,7 @@
187
  <p>Some plaintext credits to<a href="http://facebook.com/author" rel="facebook">Author</a></p>
188
  <p>Paragraph text as credits</p>
189
  </aside>
190
- <ul class="op-related-articles" title="The related ones in the footer">
191
  <li>
192
  <a href="http://example.com/article.html"></a>
193
  </li>
187
  <p>Some plaintext credits to<a href="http://facebook.com/author" rel="facebook">Author</a></p>
188
  <p>Paragraph text as credits</p>
189
  </aside>
190
+ <ul class="op-related-articles">
191
  <li>
192
  <a href="http://example.com/article.html"></a>
193
  </li>
vendor/facebook/graph-sdk/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright 2016 Facebook, Inc.
2
 
3
  You are hereby granted a non-exclusive, worldwide, royalty-free license to
4
  use, copy, modify, and distribute this software in source code or binary
1
+ Copyright 2017 Facebook, Inc.
2
 
3
  You are hereby granted a non-exclusive, worldwide, royalty-free license to
4
  use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Authentication/AccessToken.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Authentication/AccessTokenMetadata.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Authentication/OAuth2Client.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookAuthenticationException.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookAuthorizationException.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookClientException.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookOtherException.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookResponseException.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookResumableUploadException.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookSDKException.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookServerException.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookThrottleException.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Facebook.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
@@ -53,7 +53,7 @@ class Facebook
53
  /**
54
  * @const string Version number of the Facebook PHP SDK.
55
  */
56
- const VERSION = '5.4.2';
57
 
58
  /**
59
  * @const string Default Graph API version for requests.
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
53
  /**
54
  * @const string Version number of the Facebook PHP SDK.
55
  */
56
+ const VERSION = '5.4.4';
57
 
58
  /**
59
  * @const string Default Graph API version for requests.
vendor/facebook/graph-sdk/src/Facebook/FacebookApp.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/FacebookBatchRequest.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/FacebookBatchResponse.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/FacebookClient.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/FacebookRequest.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/FacebookResponse.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/FileUpload/FacebookFile.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/FileUpload/FacebookResumableUploader.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/FileUpload/FacebookTransferChunk.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/FileUpload/FacebookVideo.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/FileUpload/Mimetypes.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
@@ -724,6 +724,7 @@ class Mimetypes
724
  'spq' => 'application/scvp-vp-request',
725
  'spx' => 'audio/ogg',
726
  'src' => 'application/x-wais-source',
 
727
  'sru' => 'application/sru+xml',
728
  'srx' => 'application/sparql-results+xml',
729
  'sse' => 'application/vnd.kodak-descriptor',
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
724
  'spq' => 'application/scvp-vp-request',
725
  'spx' => 'audio/ogg',
726
  'src' => 'application/x-wais-source',
727
+ 'srt' => 'application/octet-stream',
728
  'sru' => 'application/sru+xml',
729
  'srx' => 'application/sparql-results+xml',
730
  'sse' => 'application/vnd.kodak-descriptor',
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/Birthday.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/Collection.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphAchievement.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphAlbum.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphApplication.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphCoverPhoto.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphEdge.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
@@ -235,4 +235,18 @@ class GraphEdge extends Collection
235
 
236
  return null;
237
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
238
  }
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
235
 
236
  return null;
237
  }
238
+
239
+ /**
240
+ * @inheritDoc
241
+ */
242
+ public function map(\Closure $callback)
243
+ {
244
+ return new static(
245
+ $this->request,
246
+ array_map($callback, $this->items, array_keys($this->items)),
247
+ $this->metaData,
248
+ $this->parentEdgeEndpoint,
249
+ $this->subclassName
250
+ );
251
+ }
252
  }
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphEvent.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphGroup.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphList.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphLocation.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphNode.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphNodeFactory.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphObject.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphObjectFactory.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphPage.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphPicture.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphSessionInfo.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphUser.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Helpers/FacebookCanvasHelper.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Helpers/FacebookJavaScriptHelper.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Helpers/FacebookPageTabHelper.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Helpers/FacebookRedirectLoginHelper.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Helpers/FacebookSignedRequestFromInputHelper.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Http/GraphRawResponse.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Http/RequestBodyInterface.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Http/RequestBodyMultipart.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Http/RequestBodyUrlEncoded.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookCurl.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookCurlHttpClient.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookGuzzleHttpClient.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookHttpClientInterface.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookStream.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookStreamHttpClient.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/HttpClients/HttpClientsFactory.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/PersistentData/FacebookMemoryPersistentDataHandler.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/PersistentData/FacebookSessionPersistentDataHandler.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/PersistentData/PersistentDataFactory.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/PersistentData/PersistentDataInterface.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/McryptPseudoRandomStringGenerator.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/OpenSslPseudoRandomStringGenerator.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/PseudoRandomStringGeneratorFactory.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/PseudoRandomStringGeneratorInterface.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/PseudoRandomStringGeneratorTrait.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/RandomBytesPseudoRandomStringGenerator.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/UrandomPseudoRandomStringGenerator.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/SignedRequest.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Url/FacebookUrlDetectionHandler.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Url/FacebookUrlManipulator.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/Url/UrlDetectionInterface.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/autoload.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/facebook/graph-sdk/src/Facebook/polyfills.php CHANGED
@@ -1,6 +1,6 @@
1
  <?php
2
  /**
3
- * Copyright 2016 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
1
  <?php
2
  /**
3
+ * Copyright 2017 Facebook, Inc.
4
  *
5
  * You are hereby granted a non-exclusive, worldwide, royalty-free license to
6
  * use, copy, modify, and distribute this software in source code or binary
vendor/symfony/css-selector/Exception/SyntaxErrorException.php CHANGED
@@ -27,7 +27,7 @@ class SyntaxErrorException extends ParseException
27
  * @param string $expectedValue
28
  * @param Token $foundToken
29
  *
30
- * @return SyntaxErrorException
31
  */
32
  public static function unexpectedToken($expectedValue, Token $foundToken)
33
  {
@@ -38,7 +38,7 @@ class SyntaxErrorException extends ParseException
38
  * @param string $pseudoElement
39
  * @param string $unexpectedLocation
40
  *
41
- * @return SyntaxErrorException
42
  */
43
  public static function pseudoElementFound($pseudoElement, $unexpectedLocation)
44
  {
@@ -48,7 +48,7 @@ class SyntaxErrorException extends ParseException
48
  /**
49
  * @param int $position
50
  *
51
- * @return SyntaxErrorException
52
  */
53
  public static function unclosedString($position)
54
  {
@@ -56,7 +56,7 @@ class SyntaxErrorException extends ParseException
56
  }
57
 
58
  /**
59
- * @return SyntaxErrorException
60
  */
61
  public static function nestedNot()
62
  {
@@ -64,7 +64,7 @@ class SyntaxErrorException extends ParseException
64
  }
65
 
66
  /**
67
- * @return SyntaxErrorException
68
  */
69
  public static function stringAsFunctionArgument()
70
  {
27
  * @param string $expectedValue
28
  * @param Token $foundToken
29
  *
30
+ * @return self
31
  */
32
  public static function unexpectedToken($expectedValue, Token $foundToken)
33
  {
38
  * @param string $pseudoElement
39
  * @param string $unexpectedLocation
40
  *
41
+ * @return self
42
  */
43
  public static function pseudoElementFound($pseudoElement, $unexpectedLocation)
44
  {
48
  /**
49
  * @param int $position
50
  *
51
+ * @return self
52
  */
53
  public static function unclosedString($position)
54
  {
56
  }
57
 
58
  /**
59
+ * @return self
60
  */
61
  public static function nestedNot()
62
  {
64
  }
65
 
66
  /**
67
+ * @return self
68
  */
69
  public static function stringAsFunctionArgument()
70
  {
vendor/symfony/css-selector/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2004-2016 Fabien Potencier
2
 
3
  Permission is hereby granted, free of charge, to any person obtaining a copy
4
  of this software and associated documentation files (the "Software"), to deal
1
+ Copyright (c) 2004-2017 Fabien Potencier
2
 
3
  Permission is hereby granted, free of charge, to any person obtaining a copy
4
  of this software and associated documentation files (the "Software"), to deal
vendor/symfony/css-selector/Node/Specificity.php CHANGED
@@ -61,7 +61,7 @@ class Specificity
61
  /**
62
  * @param Specificity $specificity
63
  *
64
- * @return Specificity
65
  */
66
  public function plus(Specificity $specificity)
67
  {
61
  /**
62
  * @param Specificity $specificity
63
  *
64
+ * @return self
65
  */
66
  public function plus(Specificity $specificity)
67
  {
vendor/symfony/css-selector/Parser/TokenStream.php CHANGED
@@ -61,7 +61,7 @@ class TokenStream
61
  *
62
  * @param Token $token
63
  *
64
- * @return TokenStream
65
  */
66
  public function push(Token $token)
67
  {
@@ -73,7 +73,7 @@ class TokenStream
73
  /**
74
  * Freezes stream.
75
  *
76
- * @return TokenStream
77
  */
78
  public function freeze()
79
  {
61
  *
62
  * @param Token $token
63
  *
64
+ * @return $this
65
  */
66
  public function push(Token $token)
67
  {
73
  /**
74
  * Freezes stream.
75
  *
76
+ * @return $this
77
  */
78
  public function freeze()
79
  {
vendor/symfony/css-selector/XPath/Extension/NodeExtension.php CHANGED
@@ -50,7 +50,7 @@ class NodeExtension extends AbstractExtension
50
  * @param int $flag
51
  * @param bool $on
52
  *
53
- * @return NodeExtension
54
  */
55
  public function setFlag($flag, $on)
56
  {
50
  * @param int $flag
51
  * @param bool $on
52
  *
53
+ * @return $this
54
  */
55
  public function setFlag($flag, $on)
56
  {
vendor/symfony/css-selector/XPath/Translator.php CHANGED
@@ -146,7 +146,7 @@ class Translator implements TranslatorInterface
146
  *
147
  * @param Extension\ExtensionInterface $extension
148
  *
149
- * @return Translator
150
  */
151
  public function registerExtension(Extension\ExtensionInterface $extension)
152
  {
@@ -182,7 +182,7 @@ class Translator implements TranslatorInterface
182
  *
183
  * @param ParserInterface $shortcut
184
  *
185
- * @return Translator
186
  */
187
  public function registerParserShortcut(ParserInterface $shortcut)
188
  {
146
  *
147
  * @param Extension\ExtensionInterface $extension
148
  *
149
+ * @return $this
150
  */
151
  public function registerExtension(Extension\ExtensionInterface $extension)
152
  {
182
  *
183
  * @param ParserInterface $shortcut
184
  *
185
+ * @return $this
186
  */
187
  public function registerParserShortcut(ParserInterface $shortcut)
188
  {
vendor/symfony/css-selector/XPath/XPathExpr.php CHANGED
@@ -66,7 +66,7 @@ class XPathExpr
66
  /**
67
  * @param $condition
68
  *
69
- * @return XPathExpr
70
  */
71
  public function addCondition($condition)
72
  {
@@ -84,7 +84,7 @@ class XPathExpr
84
  }
85
 
86
  /**
87
- * @return XPathExpr
88
  */
89
  public function addNameTest()
90
  {
@@ -97,7 +97,7 @@ class XPathExpr
97
  }
98
 
99
  /**
100
- * @return XPathExpr
101
  */
102
  public function addStarPrefix()
103
  {
@@ -112,7 +112,7 @@ class XPathExpr
112
  * @param string $combiner
113
  * @param XPathExpr $expr
114
  *
115
- * @return XPathExpr
116
  */
117
  public function join($combiner, XPathExpr $expr)
118
  {
66
  /**
67
  * @param $condition
68
  *
69
+ * @return $this
70
  */
71
  public function addCondition($condition)
72
  {
84
  }
85
 
86
  /**
87
+ * @return $this
88
  */
89
  public function addNameTest()
90
  {
97
  }
98
 
99
  /**
100
+ * @return $this
101
  */
102
  public function addStarPrefix()
103
  {
112
  * @param string $combiner
113
  * @param XPathExpr $expr
114
  *
115
+ * @return $this
116
  */
117
  public function join($combiner, XPathExpr $expr)
118
  {
vendor/symfony/css-selector/composer.json CHANGED
@@ -31,7 +31,7 @@
31
  "minimum-stability": "dev",
32
  "extra": {
33
  "branch-alias": {
34
- "dev-master": "3.1-dev"
35
  }
36
  }
37
  }
31
  "minimum-stability": "dev",
32
  "extra": {
33
  "branch-alias": {
34
+ "dev-master": "3.2-dev"
35
  }
36
  }
37
  }
wizard/class-instant-articles-option-styles.php CHANGED
@@ -28,6 +28,14 @@ class Instant_Articles_Option_Styles extends Instant_Articles_Option {
28
  'default' => 'default',
29
  ),
30
 
 
 
 
 
 
 
 
 
31
  );
32
 
33
  /**
28
  'default' => 'default',
29
  ),
30
 
31
+ 'rtl_enabled' => array(
32
+ 'label' => 'Right-to-Left Publishing',
33
+ 'render' => 'checkbox',
34
+ 'default' => false,
35
+ 'description' => 'Body text will read right to left for all articles.',
36
+ 'checkbox_label' => 'Enable Right-to-Left (RTL) publishing',
37
+ ),
38
+
39
  );
40
 
41
  /**