| @@ 1677-1689 (lines=13) @@ | ||
| 1674 | if( $otherObject instanceof EE_Base_Class ) { |
|
| 1675 | $otherObject->clear_cache( $this->get_model()->get_this_model_name(), $this ); |
|
| 1676 | } |
|
| 1677 | } else { |
|
| 1678 | //this thing doesn't exist in the DB, so just cache it |
|
| 1679 | if( ! $otherObjectModelObjectOrID instanceof EE_Base_Class){ |
|
| 1680 | throw new EE_Error( sprintf( |
|
| 1681 | __( 'Before a model object is saved to the database, calls to _add_relation_to must be passed an actual object, not just an ID. You provided %s as the model object to a %s', 'event_espresso' ), |
|
| 1682 | $otherObjectModelObjectOrID, |
|
| 1683 | get_class( $this ) |
|
| 1684 | )); |
|
| 1685 | } else { |
|
| 1686 | $otherObject = $otherObjectModelObjectOrID; |
|
| 1687 | } |
|
| 1688 | $this->cache( $relationName, $otherObjectModelObjectOrID, $cache_id ); |
|
| 1689 | } |
|
| 1690 | if( $otherObject instanceof EE_Base_Class ) { |
|
| 1691 | //fix the reciprocal relation too |
|
| 1692 | if( $otherObject->ID() ) { |
|
| @@ 2176-2182 (lines=7) @@ | ||
| 2173 | * @return EE_Base_Class |
|
| 2174 | */ |
|
| 2175 | public function get_one_conflicting($obj_or_fields_array, $include_primary_key = true ){ |
|
| 2176 | if($obj_or_fields_array instanceof EE_Base_Class){ |
|
| 2177 | $fields_n_values = $obj_or_fields_array->model_field_array(); |
|
| 2178 | }elseif( is_array($obj_or_fields_array)){ |
|
| 2179 | $fields_n_values = $obj_or_fields_array; |
|
| 2180 | }else{ |
|
| 2181 | throw new EE_Error(sprintf(__("%s get_all_conflicting should be called with a model object or an array of field names and values, you provided %d", "event_espresso"),get_class($this),$obj_or_fields_array)); |
|
| 2182 | } |
|
| 2183 | $query_params = array(); |
|
| 2184 | if( $this->has_primary_key_field() && |
|
| 2185 | ( $include_primary_key || $this->get_primary_key_field() instanceof EE_Primary_Key_String_Field) && |
|
| @@ 4169-4175 (lines=7) @@ | ||
| 4166 | */ |
|
| 4167 | public function get_all_copies($model_object_or_attributes_array, $query_params = array()){ |
|
| 4168 | ||
| 4169 | if($model_object_or_attributes_array instanceof EE_Base_Class){ |
|
| 4170 | $attributes_array = $model_object_or_attributes_array->model_field_array(); |
|
| 4171 | }elseif(is_array($model_object_or_attributes_array)){ |
|
| 4172 | $attributes_array = $model_object_or_attributes_array; |
|
| 4173 | }else{ |
|
| 4174 | throw new EE_Error(sprintf(__("get_all_copies should be provided with either a model object or an array of field-value-pairs, but was given %s", "event_espresso"),$model_object_or_attributes_array)); |
|
| 4175 | } |
|
| 4176 | //even copies obviously won't have the same ID, so remove the primary key |
|
| 4177 | //from the WHERE conditions for finding copies (if there is a primary key, of course) |
|
| 4178 | if($this->has_primary_key_field() && isset($attributes_array[$this->primary_key_name()])){ |
|