Commit fb1acc31 authored by Taylor Otwell's avatar Taylor Otwell

more additions.

parent 9d2a76b2
...@@ -35,7 +35,7 @@ class Connection { ...@@ -35,7 +35,7 @@ class Connection {
* *
* @var Connector * @var Connector
*/ */
protected $connector; private $connector;
/** /**
* Create a new Connection instance. * Create a new Connection instance.
...@@ -57,7 +57,7 @@ class Connection { ...@@ -57,7 +57,7 @@ class Connection {
* *
* @return void * @return void
*/ */
protected function connect() public function connect()
{ {
$this->pdo = $this->connector->connect($this->config); $this->pdo = $this->connector->connect($this->config);
} }
...@@ -67,7 +67,7 @@ class Connection { ...@@ -67,7 +67,7 @@ class Connection {
* *
* @return bool * @return bool
*/ */
protected function connected() public function connected()
{ {
return ! is_null($this->pdo); return ! is_null($this->pdo);
} }
...@@ -128,7 +128,7 @@ class Connection { ...@@ -128,7 +128,7 @@ class Connection {
* @param array $results * @param array $results
* @return mixed * @return mixed
*/ */
protected function execute(\PDOStatement $statement, $bindings) private function execute(\PDOStatement $statement, $bindings)
{ {
$result = $statement->execute($bindings); $result = $statement->execute($bindings);
......
...@@ -471,7 +471,13 @@ class Query { ...@@ -471,7 +471,13 @@ class Query {
{ {
$this->select = 'SELECT '.$aggregator.'('.$this->wrap($column).') AS '.$this->wrap('aggregate'); $this->select = 'SELECT '.$aggregator.'('.$this->wrap($column).') AS '.$this->wrap('aggregate');
return $this->first()->aggregate; $result = $this->connection->scalar($this->compile_select(), $this->bindings);
// Reset the SELECT clause so more queries can be performed using the same instance.
// This is helpful for getting aggregates and then getting actual results.
$this->select = null;
return $result;
} }
/** /**
...@@ -656,10 +662,7 @@ class Query { ...@@ -656,10 +662,7 @@ class Query {
* *
* @return string * @return string
*/ */
protected function wrapper() protected function wrapper() { return '"'; }
{
return '"';
}
/** /**
* Create query parameters from an array of values. * Create query parameters from an array of values.
......
...@@ -33,7 +33,7 @@ class Loader { ...@@ -33,7 +33,7 @@ class Loader {
{ {
static::$aliases = Config::get('aliases'); static::$aliases = Config::get('aliases');
foreach ($paths as $path) { static::register($path); } foreach ($paths as $path) { static::register_path($path); }
} }
/** /**
...@@ -113,15 +113,38 @@ class Loader { ...@@ -113,15 +113,38 @@ class Loader {
} }
/** /**
* Register a path with the auto-loader. After registering the path, it will be * Register a path with the auto-loader.
* checked similarly to the models and libraries directories. *
* After registering the path, it will be checked similarly to the models and libraries directories.
* *
* @param string $path * @param string $path
* @return void * @return void
*/ */
public static function register($path) public static function register_path($path)
{ {
static::$paths[] = rtrim($path, '/').'/'; static::$paths[] = rtrim($path, '/').'/';
} }
/**
* Register an alias with the auto-loader.
*
* @param array $alias
* @return void
*/
public static function register_alias($alias)
{
static::$aliases = array_merge(static::$aliases, $alias);
}
/**
* Remove an alias from the auto-loader's list of aliases.
*
* @param string $alias
* @return void
*/
public static function forget_alias($alias)
{
unset(static::$aliases[$alias]);
}
} }
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment