protected function create_conditions_from_keys(Model $model, $condition_keys = array(), $value_keys = array())
{
$condition_string = implode('_and_', $condition_keys);
$condition_values = array_values($model->get_values_for($value_keys));
// return null if all the foreign key values are null so that we don't try to do a query like "id is null"
if (all(null, $condition_values)) {
return null;
}
$conditions = SQLBuilder::create_conditions_from_underscored_string(Table::load(get_class($model))->conn, $condition_string, $condition_values);
# DO NOT CHANGE THE NEXT TWO LINES. add_condition operates on a reference and will screw options array up
if (isset($this->options['conditions'])) {
$options_conditions = $this->options['conditions'];
} else {
$options_conditions = array();
}
return Utils::add_condition($options_conditions, $conditions);
}