Show
Ignore:
Timestamp:
07/07/09 21:57:06 (3 years ago)
Author:
john
Message:

updates

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/trax/vendor/trax/active_record.php

    r311 r313  
    667667            switch($association_type) { 
    668668                case "has_many": 
    669                     $parameters = is_array($this->has_many) && @array_key_exists($method_name, $this->has_many) ?  
     669                    $parameters = is_array($this->has_many) && @array_key_exists($method_name, $this->has_many) && !is_null($this->has_many[$method_name]) ?  
    670670                        array_merge($this->has_many[$method_name], $parameters) : $parameters; 
    671671                    $result = $this->find_all_has_many($method_name, $parameters); 
    672672                    break; 
    673673                case "has_one": 
    674                     $parameters = is_array($this->has_one) && @array_key_exists($method_name, $this->has_one) ?  
     674                    $parameters = is_array($this->has_one) && @array_key_exists($method_name, $this->has_one) && !is_null($this->has_one[$method_name]) ?  
    675675                        array_merge($this->has_one[$method_name], $parameters) : $parameters; 
    676676                    $result = $this->find_one_has_one($method_name, $parameters); 
    677677                    break; 
    678678                case "belongs_to": 
    679                     $parameters = is_array($this->belongs_to) && @array_key_exists($method_name, $this->belongs_to) ?  
     679                    $parameters = is_array($this->belongs_to) && @array_key_exists($method_name, $this->belongs_to) && !is_null($this->belongs_to[$method_name]) ?  
    680680                        array_merge($this->belongs_to[$method_name], $parameters) : $parameters; 
    681681                    $result = $this->find_one_belongs_to($method_name, $parameters); 
    682682                    break; 
    683683                case "has_and_belongs_to_many":   
    684                     $parameters = is_array($this->has_and_belongs_to_many) && @array_key_exists($method_name, $this->has_and_belongs_to_many) ?  
     684                    $parameters = is_array($this->has_and_belongs_to_many) && @array_key_exists($method_name, $this->has_and_belongs_to_many) && !is_null($this->has_and_belongs_to_many[$method_name]) ?  
    685685                        array_merge($this->has_and_belongs_to_many[$method_name], $parameters) : $parameters; 
    686686                    $result = $this->find_all_habtm($method_name, $parameters);  
     
    760760                $options['per_page'] = $parameters['per_page']; 
    761761            } 
     762            if(@array_key_exists("group", $parameters)) { 
     763                $options['group'] = $parameters['group']; 
     764            } 
     765            if(@array_key_exists("having", $parameters)) { 
     766                $options['having'] = $parameters['having']; 
     767            }                        
    762768            if(@array_key_exists("class_name", $parameters)) { 
    763769                $other_object_name = $parameters['class_name']; 
     
    22482254                        unset($attributes); 
    22492255                        $attributes[$this_foreign_key] = $this_foreign_value; 
    2250                         $attributes[$other_foreign_key] = $other_foreign_value; 
     2256                        $attributes[$other_foreign_key] = $other_foreign_value;    
     2257                        #error_log("HABTM - this_foreign_value:$this_foreign_value other_foreign_value:$other_foreign_value"); 
     2258                        if(in_array('', array($this_foreign_value, $other_foreign_value))) { 
     2259                            # this will cause an error so don't insert 
     2260                            continue; 
     2261                        }                          
    22512262                        if($sort_field) { 
    22522263                            $attributes[$sort_field] = $sort_value;