- Refractored Date/time fields
- Added an implode function on EntityCollection
This commit is contained in:
		
							parent
							
								
									538af38769
								
							
						
					
					
						commit
						07ba3f611b
					
				@ -4,10 +4,7 @@ namespace Ulmus\Entity\Field;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
class Date extends Datetime {
 | 
					class Date extends Datetime {
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    public function __toString()
 | 
					    public string $format = "Y-m-d";
 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        return $this->format("Y-m-d");
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    public function formatLocale(string $format) : string
 | 
					    public function formatLocale(string $format) : string
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
 | 
				
			|||||||
@ -4,9 +4,6 @@ namespace Ulmus\Entity\Field;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
class Time extends Datetime {
 | 
					class Time extends Datetime {
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    public function __toString()
 | 
					    public string $format = "H:i:s";
 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        return $this->format("H:i:s");
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -107,4 +107,15 @@ class EntityCollection extends \ArrayObject {
 | 
				
			|||||||
        
 | 
					        
 | 
				
			||||||
        return $list;
 | 
					        return $list;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    public function implode(string $glue, ? Callable $callback = null) : string 
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        $values = [];
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
 | 
					        foreach($this as $item) {
 | 
				
			||||||
 | 
					            $values[] = $callback ? $callback($item) : (string) $item;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
 | 
					        return implode($glue, $values);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -110,6 +110,10 @@ trait EntityTrait {
 | 
				
			|||||||
                        $bridgeRelation = $bridgeEntity->searchFieldAnnotation($relation->field, new Relation() );
 | 
					                        $bridgeRelation = $bridgeEntity->searchFieldAnnotation($relation->field, new Relation() );
 | 
				
			||||||
                        $relationRelation = $bridgeEntity->searchFieldAnnotation($relation->foreignField, new Relation() );
 | 
					                        $relationRelation = $bridgeEntity->searchFieldAnnotation($relation->foreignField, new Relation() );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                        if ($relationRelation === null) {
 | 
				
			||||||
 | 
					                            throw new \Exception("@Relation annotation not found for field `{$relation->foreignField}` in entity {$relation->bridge}");
 | 
				
			||||||
 | 
					                        }
 | 
				
			||||||
 | 
					                        
 | 
				
			||||||
                        $repository = $relationRelation->entity()->repository();
 | 
					                        $repository = $relationRelation->entity()->repository();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                        $bridgeAlias = uniqid("bridge_");
 | 
					                        $bridgeAlias = uniqid("bridge_");
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user