Skip to content

Commit b3cdd25

Browse files
authored
Merge pull request wp-graphql#126 from wp-graphql/release/v0.3.2
Release/v0.3.2
2 parents 4f9d569 + 8cc6ba8 commit b3cdd25

File tree

7 files changed

+41
-30
lines changed

7 files changed

+41
-30
lines changed

composer.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,9 @@
2626
"wpunit-test": "vendor/bin/codecept run wpunit"
2727
},
2828
"require-dev": {
29-
"lucatume/wp-browser": ">=2.2.1 <2.2.8"
29+
"lucatume/wp-browser": "^2.2.",
30+
"dealerdirect/phpcodesniffer-composer-installer": "^0.5.0",
31+
"wp-coding-standards/wpcs": "^2.1",
32+
"phpcompatibility/phpcompatibility-wp": "^2.0"
3033
}
3134
}

src/class-config.php

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -198,10 +198,11 @@ protected function add_acf_fields_to_post_object_types() {
198198
*
199199
* @param [type] $root Undocumented.
200200
* @param [type] $acf_field Undocumented.
201+
* @param boolean $format Whether ACF should apply formatting to the field. Default false.
201202
*
202203
* @return mixed
203204
*/
204-
protected function get_acf_field_value( $root, $acf_field ) {
205+
protected function get_acf_field_value( $root, $acf_field, $format = false ) {
205206

206207
$value = null;
207208
$id = null;
@@ -416,7 +417,7 @@ protected function register_graphql_field( $type_name, $field_name, $config ) {
416417
*
417418
* @see: https://github.com/wp-graphql/wp-graphql-acf/issues/25
418419
*/
419-
if ( 0 === $acf_field['multiple'] ) {
420+
if ( empty( $acf_field['multiple'] ) ) {
420421
$field_config['type'] = 'String';
421422
} else {
422423
$field_config['type'] = [ 'list_of' => 'String' ];
@@ -445,18 +446,13 @@ protected function register_graphql_field( $type_name, $field_name, $config ) {
445446
$field_config = [
446447
'type' => 'String',
447448
'resolve' => function( $root, $args, $context, $info ) use ( $acf_field ) {
448-
if ( isset( $root->ID ) ) {
449-
return get_field( $acf_field['key'], $root->ID, true );
450-
}
451-
//handle sub fields
452-
if ( isset( $root[ $acf_field['key'] ] ) ) {
453-
$value = $root[ $acf_field['key'] ];
454-
$timestamp = strtotime( $value );
455449

456-
return date( $acf_field['return_format'], $timestamp );
457-
}
450+
$value = $this->get_acf_field_value( $root, $acf_field, true );
458451

459-
return null;
452+
if ( ! empty( $value ) && ! empty( $acf_field['return_format'] ) ) {
453+
$value = date( $acf_field['return_format'], $value );
454+
}
455+
return ! empty( $value ) ? $value : null;
460456
},
461457
];
462458
break;
@@ -677,7 +673,7 @@ protected function register_graphql_field( $type_name, $field_name, $config ) {
677673
];
678674
break;
679675
case 'user':
680-
676+
681677
$type = 'User';
682678

683679
if ( isset( $acf_field['multiple'] ) && 1 === $acf_field['multiple'] ) {
@@ -1672,9 +1668,16 @@ protected function add_acf_fields_to_options_pages() {
16721668
}
16731669

16741670
/**
1675-
* Create type name
1671+
* Create field and type names. Use explicit graphql_field_name
1672+
* if available and fallback to generating from title if not available.
16761673
*/
1677-
$type_name = ucfirst( Config::camel_case( $page_title ) );
1674+
if ( ! empty( $options_page['graphql_field_name'] ) ) {
1675+
$field_name = $options_page['graphql_field_name'];
1676+
$type_name = ucfirst( $options_page['graphql_field_name'] );
1677+
} else {
1678+
$field_name = Config::camel_case( $page_title );
1679+
$type_name = ucfirst( Config::camel_case( $page_title ) );
1680+
}
16781681

16791682
/**
16801683
* Register options page type to schema.
@@ -1706,7 +1709,7 @@ protected function add_acf_fields_to_options_pages() {
17061709
$options_page['type'] = 'options_page';
17071710
register_graphql_field(
17081711
'RootQuery',
1709-
Config::camel_case( $page_title ),
1712+
$field_name,
17101713
[
17111714
'type' => $type_name,
17121715
'description' => sprintf( __( '%s options', 'wp-graphql-acf' ), $options_page['page_title'] ),

tests/wpunit/PostObjectFieldsTest.php

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ class PostObjectFieldsTest extends \Codeception\TestCase\WPTestCase {
66

77
public function setUp() {
88
parent::setUp(); // TODO: Change the autogenerated stub
9-
WPGraphQL::__clear_schema();
9+
WPGraphQL::clear_schema();
1010
$this->group_key = __CLASS__;
1111

1212
$this->register_acf_field_group();
@@ -1150,7 +1150,7 @@ public function testQueryMultipleSelectFieldWithNoValueSet() {
11501150
$this->register_acf_field([
11511151
'name' => 'select_field_multiple',
11521152
'type' => 'select',
1153-
'show_in_graphql' => 1,
1153+
'show_in_graphql' => true,
11541154
'graphql_field_name' => 'selectMultiple',
11551155
'choices' => [
11561156
'one' => 'One',
@@ -1161,7 +1161,9 @@ public function testQueryMultipleSelectFieldWithNoValueSet() {
11611161
'multiple' => 1,
11621162
]);
11631163

1164-
delete_field( 'select_field_multiple', $this->post_id );
1164+
delete_post_meta( $this->post_id, 'select_field_multiple' );
1165+
1166+
codecept_debug( 'goo' );
11651167

11661168
$query = '
11671169
query GET_POST_WITH_ACF_FIELD( $postId: Int! ) {

vendor/autoload.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@
44

55
require_once __DIR__ . '/composer/autoload_real.php';
66

7-
return ComposerAutoloaderInit2c922a3b1933e10e7ad3704a3cd98524::getLoader();
7+
return ComposerAutoloaderInit0d1c0770bd52413713b6ce542771fda1::getLoader();

vendor/composer/autoload_real.php

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
// autoload_real.php @generated by Composer
44

5-
class ComposerAutoloaderInit2c922a3b1933e10e7ad3704a3cd98524
5+
class ComposerAutoloaderInit0d1c0770bd52413713b6ce542771fda1
66
{
77
private static $loader;
88

@@ -13,21 +13,24 @@ public static function loadClassLoader($class)
1313
}
1414
}
1515

16+
/**
17+
* @return \Composer\Autoload\ClassLoader
18+
*/
1619
public static function getLoader()
1720
{
1821
if (null !== self::$loader) {
1922
return self::$loader;
2023
}
2124

22-
spl_autoload_register(array('ComposerAutoloaderInit2c922a3b1933e10e7ad3704a3cd98524', 'loadClassLoader'), true, true);
25+
spl_autoload_register(array('ComposerAutoloaderInit0d1c0770bd52413713b6ce542771fda1', 'loadClassLoader'), true, true);
2326
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24-
spl_autoload_unregister(array('ComposerAutoloaderInit2c922a3b1933e10e7ad3704a3cd98524', 'loadClassLoader'));
27+
spl_autoload_unregister(array('ComposerAutoloaderInit0d1c0770bd52413713b6ce542771fda1', 'loadClassLoader'));
2528

2629
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
2730
if ($useStaticLoader) {
2831
require_once __DIR__ . '/autoload_static.php';
2932

30-
call_user_func(\Composer\Autoload\ComposerStaticInit2c922a3b1933e10e7ad3704a3cd98524::getInitializer($loader));
33+
call_user_func(\Composer\Autoload\ComposerStaticInit0d1c0770bd52413713b6ce542771fda1::getInitializer($loader));
3134
} else {
3235
$map = require __DIR__ . '/autoload_namespaces.php';
3336
foreach ($map as $namespace => $path) {

vendor/composer/autoload_static.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
namespace Composer\Autoload;
66

7-
class ComposerStaticInit2c922a3b1933e10e7ad3704a3cd98524
7+
class ComposerStaticInit0d1c0770bd52413713b6ce542771fda1
88
{
99
public static $prefixLengthsPsr4 = array (
1010
'W' =>
@@ -29,9 +29,9 @@ class ComposerStaticInit2c922a3b1933e10e7ad3704a3cd98524
2929
public static function getInitializer(ClassLoader $loader)
3030
{
3131
return \Closure::bind(function () use ($loader) {
32-
$loader->prefixLengthsPsr4 = ComposerStaticInit2c922a3b1933e10e7ad3704a3cd98524::$prefixLengthsPsr4;
33-
$loader->prefixDirsPsr4 = ComposerStaticInit2c922a3b1933e10e7ad3704a3cd98524::$prefixDirsPsr4;
34-
$loader->classMap = ComposerStaticInit2c922a3b1933e10e7ad3704a3cd98524::$classMap;
32+
$loader->prefixLengthsPsr4 = ComposerStaticInit0d1c0770bd52413713b6ce542771fda1::$prefixLengthsPsr4;
33+
$loader->prefixDirsPsr4 = ComposerStaticInit0d1c0770bd52413713b6ce542771fda1::$prefixDirsPsr4;
34+
$loader->classMap = ComposerStaticInit0d1c0770bd52413713b6ce542771fda1::$classMap;
3535

3636
}, null, ClassLoader::class);
3737
}

wp-graphql-acf.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* Author URI: https://www.wpgraphql.com
88
* Text Domain: wp-graphql-acf
99
* Domain Path: /languages
10-
* Version: 0.3.1
10+
* Version: 0.3.2
1111
* Requires PHP: 7.0
1212
* GitHub Plugin URI: https://github.com/afragen/github-updater
1313
*

0 commit comments

Comments
 (0)