diff --git a/src/classes/entities/class-tainacan-item-metadata-entity.php b/src/classes/entities/class-tainacan-item-metadata-entity.php
index 8b215f01d..264eb3cf0 100644
--- a/src/classes/entities/class-tainacan-item-metadata-entity.php
+++ b/src/classes/entities/class-tainacan-item-metadata-entity.php
@@ -136,7 +136,7 @@ class Item_Metadata_Entity extends Entity {
* Get the value as a HTML string, with markup and links
* @return string
*/
- public function get_value_as_html(){
+ public function get_value_as_html() {
$metadatum = $this->get_metadatum();
if (is_object($metadatum)) {
@@ -153,7 +153,6 @@ class Item_Metadata_Entity extends Entity {
$return = '';
if ( $this->is_multiple() ) {
-
$total = sizeof($value);
$count = 0;
$prefix = $this->get_multivalue_prefix();
@@ -162,11 +161,8 @@ class Item_Metadata_Entity extends Entity {
foreach ($value as $v) {
$return .= $prefix;
-
$return .= (string) $v;
-
$return .= $suffix;
-
$count ++;
if ($count < $total)
$return .= $separator;
diff --git a/src/views/admin/components/metadata-types/date/class-tainacan-date.php b/src/views/admin/components/metadata-types/date/class-tainacan-date.php
index a842c27f8..6e0247fb5 100644
--- a/src/views/admin/components/metadata-types/date/class-tainacan-date.php
+++ b/src/views/admin/components/metadata-types/date/class-tainacan-date.php
@@ -11,7 +11,7 @@ defined( 'ABSPATH' ) or die( 'No script kiddies please!' );
*/
class Date extends Metadata_Type {
- function __construct(){
+ function __construct() {
// call metadatum type constructor
parent::__construct();
$this->set_primitive_type('date');
diff --git a/tests/test-bgprocess.php b/tests/test-bgprocess.php
index 91f8ac3d7..a70298a99 100644
--- a/tests/test-bgprocess.php
+++ b/tests/test-bgprocess.php
@@ -16,12 +16,10 @@ use Tainacan\Entities;
class BGProcess extends TAINACAN_UnitApiTestCase {
function test_table() {
-
global $wpdb;
$table_name = $wpdb->prefix . 'tnc_bg_process';
-
$table_exists = $wpdb->get_var( "SHOW TABLES LIKE '".$table_name."'" );
$this->assertNotEquals(null, $table_exists);
@@ -29,10 +27,6 @@ class BGProcess extends TAINACAN_UnitApiTestCase {
$column_exists = $wpdb->get_var( "SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name = '{$wpdb->prefix}tnc_bg_process' AND column_name = 'output'" );
$this->assertEquals('output', $column_exists, 'BG processes table misconfigured');
-
}
-
-
-
}
\ No newline at end of file
diff --git a/tests/test-category-metadatum-types.php b/tests/test-category-metadatum-types.php
index 8ace43b58..b0de80955 100644
--- a/tests/test-category-metadatum-types.php
+++ b/tests/test-category-metadatum-types.php
@@ -794,9 +794,6 @@ class TaxonomyMetadatumTypes extends TAINACAN_UnitTestCase {
$checkMeta = $Tainacan_Metadata->fetch( $metadatum->get_id() );
$this->assertEquals('no', $checkMeta->get_metadata_type_options()['allow_new_terms']);
-
-
-
}
}
diff --git a/tests/test-item-metadata.php b/tests/test-item-metadata.php
index fa5c98e3f..7c50ff4e2 100644
--- a/tests/test-item-metadata.php
+++ b/tests/test-item-metadata.php
@@ -3,7 +3,7 @@
namespace Tainacan\Tests;
/**
- * Class TestCollections
+ * Class Item_Metadata
*
* @package Test_Tainacan
*/
@@ -406,6 +406,8 @@ class Item_Metadata extends TAINACAN_UnitTestCase {
),
true
);
+
+ // Simple numeric metadata
$metadatum_numeric = $this->tainacan_entity_factory->create_entity(
'metadatum',
array(
@@ -418,6 +420,7 @@ class Item_Metadata extends TAINACAN_UnitTestCase {
true
);
+ // Multiple numeric metadata
$metadatum_numeric_multiple = $this->tainacan_entity_factory->create_entity(
'metadatum',
array(
@@ -441,4 +444,65 @@ class Item_Metadata extends TAINACAN_UnitTestCase {
$item_metadata_numeric_mult->validate();
$this->assertEquals($item_metadata_numeric_mult->get_value_as_html(), '10 | 22 | 4');
}
+
+ function test_metadata_date_html() {
+ $collection = $this->tainacan_entity_factory->create_entity('collection', ['name' => 'My Collection'], true);
+ $item = $this->tainacan_entity_factory->create_entity(
+ 'item',
+ array(
+ 'title' => 'My test item',
+ 'description' => 'item description',
+ 'collection' => $collection,
+ 'status' => 'publish'
+ ),
+ true
+ );
+
+ // Simple date metadata
+ $metadatum_date = $this->tainacan_entity_factory->create_entity(
+ 'metadatum',
+ array(
+ 'name' => 'Date important meta',
+ 'description' => 'and its description',
+ 'collection_id' => $collection->get_id(),
+ 'metadata_type' => 'Tainacan\Metadata_Types\Date',
+ 'status' => 'publish'
+ ),
+ true
+ );
+
+ // Multiple date metadata
+ $metadatum_date_multiple = $this->tainacan_entity_factory->create_entity(
+ 'metadatum',
+ array(
+ 'name' => 'Date meta',
+ 'description' => 'and its description',
+ 'collection_id' => $collection->get_id(),
+ 'metadata_type' => 'Tainacan\Metadata_Types\Date',
+ 'status' => 'publish',
+ 'multiple' => 'yes'
+ ),
+ true
+ );
+
+ $item_metadata_date = new \Tainacan\Entities\Item_Metadata_Entity($item, $metadatum_date);
+ // Invalid date value
+ $item_metadata_date->set_value(10);
+ $item_metadata_date->validate();
+ $this->assertFalse($item_metadata_date->get_value_as_html());
+
+ $item_metadata_date->set_value("2021-04-05");
+ $item_metadata_date->validate();
+ $this->assertEquals($item_metadata_date->get_value_as_html(), "April 5, 2021");
+
+ $item_metadata_date_mult = new \Tainacan\Entities\Item_Metadata_Entity($item, $metadatum_date_multiple);
+ // Invalid date values
+ $item_metadata_date_mult->set_value([10,22,4]);
+ $item_metadata_date_mult->validate();
+ $this->assertEquals($item_metadata_date_mult->get_value_as_html(), ' | | ');
+
+ $item_metadata_date_mult->set_value(["2021-04-05", "2021-12-30"]);
+ $item_metadata_date_mult->validate();
+ $this->assertEquals($item_metadata_date_mult->get_value_as_html(), 'April 5, 2021 | December 30, 2021');
+ }
}
\ No newline at end of file