Ejemplo n.º 1
0
 protected static function find_one($class_name, $id, $options)
 {
     $conditions = '';
     if (isset($options['conditions'])) {
         $conditions = ' AND (' . SqlBuilder::sanitize_sql_for_conditions($options['conditions']) . ')';
     }
     $primary_key = self::primary_key_for($class_name);
     $table_columns = self::$connection->columns(self::get_table_name($class_name));
     $options['conditions'] = self::quoted_table_name($class_name) . '.' . self::$connection->quote_column_name($primary_key) . ' = ' . self::$connection->quote($id, $table_columns[$primary_key]) . $conditions;
     if ($result = self::find_all($class_name, $options)) {
         return $result[0];
     } else {
         throw new RecordNotFound("Couldn't find {$class_name} with ID={$id}{$conditions}");
     }
 }
Ejemplo n.º 2
0
 protected function prepare_conditions(&$options)
 {
     $conditions = '';
     if (isset($options['conditions'])) {
         $conditions .= '(' . SqlBuilder::sanitize_sql_for_conditions($options['conditions']) . ')';
     }
     if (isset($this->association_options['conditions'])) {
         if (!empty($conditions)) {
             $conditions .= ' AND ';
         }
         $conditions .= '(' . SqlBuilder::sanitize_sql_for_conditions($this->association_options['conditions']) . ')';
     }
     $options['conditions'] = $conditions;
 }