Skip to content

Commit

Permalink
fixed database table prefixing
Browse files Browse the repository at this point in the history
  • Loading branch information
cmgmyr committed Apr 15, 2015
1 parent 2edbb89 commit 9389731
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 13 deletions.
14 changes: 7 additions & 7 deletions src/Cmgmyr/Messenger/Models/Thread.php
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ public function scopeForUserWithNewMessages($query, $userId)
->where('participants.user_id', $userId)
->whereNull('participants.deleted_at')
->where(function ($query) {
$query->where('threads.updated_at', '>', $this->getConnection()->raw('participants.last_read'))
$query->where('threads.updated_at', '>', $this->getConnection()->raw($this->getConnection()->getTablePrefix() . 'participants.last_read'))
->orWhereNull('participants.last_read');
})
->select('threads.*')
Expand Down Expand Up @@ -240,16 +240,16 @@ private function createSelectString($columns)
switch ($dbDriver) {
case 'pgsql':
case 'sqlite':
$columnString = implode(" || ' ' || users.", $columns);
$selectString = "(users." . $columnString . ") as name";
$columnString = implode(" || ' ' || " . $this->getConnection()->getTablePrefix() . "users.", $columns);
$selectString = "(" . $this->getConnection()->getTablePrefix() . "users." . $columnString . ") as name";
break;
case 'sqlsrv':
$columnString = implode(" + ' ' + users.", $columns);
$selectString = "(users." . $columnString . ") as name";
$columnString = implode(" + ' ' + " . $this->getConnection()->getTablePrefix() . "users.", $columns);
$selectString = "(" . $this->getConnection()->getTablePrefix() . "users." . $columnString . ") as name";
break;
default:
$columnString = implode(", ' ', users.", $columns);
$selectString = "concat(users." . $columnString . ") as name";
$columnString = implode(", ' ', " . $this->getConnection()->getTablePrefix() . "users.", $columns);
$selectString = "concat(" . $this->getConnection()->getTablePrefix() . "users." . $columnString . ") as name";
}

return $selectString;
Expand Down
6 changes: 3 additions & 3 deletions tests/EloquentThreadTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -220,15 +220,15 @@ public function it_should_generate_participant_select_string()

$columns = ['name'];
$select = $method->invokeArgs($thread, [$columns]);
$this->assertEquals("(users.name) as name", $select);
$this->assertEquals("(" . Eloquent::getConnectionResolver()->getTablePrefix() . "users.name) as name", $select);

$columns = ['first_name', 'last_name'];
$select = $method->invokeArgs($thread, [$columns]);
$this->assertEquals("(users.first_name || ' ' || users.last_name) as name", $select);
$this->assertEquals("(" . Eloquent::getConnectionResolver()->getTablePrefix() . "users.first_name || ' ' || " . Eloquent::getConnectionResolver()->getTablePrefix() . "users.last_name) as name", $select);

$columns = ['first_name', 'last_name', 'email'];
$select = $method->invokeArgs($thread, [$columns]);
$this->assertEquals("(users.first_name || ' ' || users.last_name || ' ' || users.email) as name", $select);
$this->assertEquals("(" . Eloquent::getConnectionResolver()->getTablePrefix() . "users.first_name || ' ' || " . Eloquent::getConnectionResolver()->getTablePrefix() . "users.last_name || ' ' || " . Eloquent::getConnectionResolver()->getTablePrefix() . "users.email) as name", $select);
}

/** @test */
Expand Down
6 changes: 3 additions & 3 deletions tests/TestCase.php
Original file line number Diff line number Diff line change
Expand Up @@ -82,9 +82,9 @@ function ($table) {
*/
private function seedUsersTable()
{
DB::insert('INSERT INTO users (id, first_name, last_name, email, created_at, updated_at) VALUES (?, ?, ?, ?, datetime(), datetime())', [1, 'Chris', 'Gmyr', '[email protected]']);
DB::insert('INSERT INTO users (id, first_name, last_name, email, created_at, updated_at) VALUES (?, ?, ?, ?, datetime(), datetime())', [2, 'Adam', 'Wathan', '[email protected]']);
DB::insert('INSERT INTO users (id, first_name, last_name, email, created_at, updated_at) VALUES (?, ?, ?, ?, datetime(), datetime())', [3, 'Taylor', 'Otwell', '[email protected]']);
DB::insert('INSERT INTO ' . DB::getTablePrefix() . 'users (id, first_name, last_name, email, created_at, updated_at) VALUES (?, ?, ?, ?, datetime(), datetime())', [1, 'Chris', 'Gmyr', '[email protected]']);
DB::insert('INSERT INTO ' . DB::getTablePrefix() . 'users (id, first_name, last_name, email, created_at, updated_at) VALUES (?, ?, ?, ?, datetime(), datetime())', [2, 'Adam', 'Wathan', '[email protected]']);
DB::insert('INSERT INTO ' . DB::getTablePrefix() . 'users (id, first_name, last_name, email, created_at, updated_at) VALUES (?, ?, ?, ?, datetime(), datetime())', [3, 'Taylor', 'Otwell', '[email protected]']);
}

/**
Expand Down

0 comments on commit 9389731

Please sign in to comment.