Skip to content

Commit f4e8848

Browse files
authored
Merge pull request #64 from skipperbent/v4-development
Version 4.3.0
2 parents 3f13540 + 107120f commit f4e8848

File tree

3 files changed

+252
-209
lines changed

3 files changed

+252
-209
lines changed

README.md

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -918,23 +918,25 @@ Pixie comes with powerful query events to supercharge your application. These ev
918918

919919
#### Available Events
920920

921-
| Event constant | Event value/name | Description |
922-
| :------------------------------------ | :------------- | :------------ |
923-
| `EventHandler::EVENT_BEFORE_ALL` | `before-*` | Event-type that fires before each query. |
924-
| `EventHandler::EVENT_AFTER_ALL` | `after-*` | Event-type that fires after each query. |
925-
| `EventHandler::EVENT_BEFORE_SELECT` | `before-select` | Event-type that fires before select query. |
926-
| `EventHandler::EVENT_AFTER_SELECT` | `after-select` | Event-type that fires after insert query. |
927-
| `EventHandler::EVENT_BEFORE_INSERT` | `before-insert` | Event-type that fires before insert query |
928-
| `EventHandler::EVENT_AFTER_INSERT` | `after-insert` | Event-type that fires after insert query. |
929-
| `EventHandler::EVENT_BEFORE_UPDATE` | `before-update` | Event-type that fires before update query. |
930-
| `EventHandler::EVENT_AFTER_UPDATE` | `after-update` | Event-type that fires after update query. |
931-
| `EventHandler::EVENT_BEFORE_DELETE` | `before-delete` | Event-type that fires before delete query. |
932-
| `EventHandler::EVENT_AFTER_DELETE` | `after-delete` | Event-type that fires after delete query. |
921+
| Event constant | Event value/name | Description |
922+
| :------------------------------------ | :------------- | :------------ |
923+
| `EventHandler::EVENT_BEFORE_ALL` | `before-*` | Event-type that fires before each query. |
924+
| `EventHandler::EVENT_AFTER_ALL` | `after-*` | Event-type that fires after each query. |
925+
| `EventHandler::EVENT_BEFORE_QUERY` | `before-query` | Event-type that fires before a raw query is executed. |
926+
| `EventHandler::EVENT_AFTER_QUERY` | `after-query` | Event-type that fires after a raw query is executed |
927+
| `EventHandler::EVENT_BEFORE_SELECT` | `before-select` | Event-type that fires before select query. |
928+
| `EventHandler::EVENT_AFTER_SELECT` | `after-select` | Event-type that fires after insert query. |
929+
| `EventHandler::EVENT_BEFORE_INSERT` | `before-insert` | Event-type that fires before insert query |
930+
| `EventHandler::EVENT_AFTER_INSERT` | `after-insert` | Event-type that fires after insert query. |
931+
| `EventHandler::EVENT_BEFORE_UPDATE` | `before-update` | Event-type that fires before update query. |
932+
| `EventHandler::EVENT_AFTER_UPDATE` | `after-update` | Event-type that fires after update query. |
933+
| `EventHandler::EVENT_BEFORE_DELETE` | `before-delete` | Event-type that fires before delete query. |
934+
| `EventHandler::EVENT_AFTER_DELETE` | `after-delete` | Event-type that fires after delete query. |
933935

934936
#### Registering Events
935937

936938
```php
937-
$queryBuilder->registerEvent(EventHandler::EVENT_BEFORE_SELECT, 'users', function(QueryBuilderHandler $qb)
939+
$queryBuilder->registerEvent(EventHandler::EVENT_BEFORE_SELECT, 'users', function(QueryObject $qo, QueryBuilderHandler $qb)
938940
{
939941
$qb->where('status', '!=', 'banned');
940942
});
@@ -950,7 +952,7 @@ If you want the event to be performed when **any table is being queried**, provi
950952
After inserting data into `my_table`, details will be inserted into another table
951953

952954
```php
953-
$queryBuilder->registerEvent(EventHandler::EVENT_AFTER_INSERT, 'my_table', function(QueryBuilderHandler $qb, $insertId)
955+
$queryBuilder->registerEvent(EventHandler::EVENT_AFTER_INSERT, 'my_table', function(QueryObject $qo, QueryBuilderHandler $qb, $insertId)
954956
{
955957
$qb
956958
->table('person_details')->insert(array(
@@ -964,7 +966,7 @@ $queryBuilder->registerEvent(EventHandler::EVENT_AFTER_INSERT, 'my_table', funct
964966
Whenever data is inserted into `person_details` table, set the timestamp field `created_at`, so we don't have to specify it everywhere:
965967

966968
```php
967-
$queryBuilder->registerEvent(EventHandler::EVENT_AFTER_INSERT, 'person_details', function(QueryBuilderHandler $qb, $insertId)
969+
$queryBuilder->registerEvent(EventHandler::EVENT_AFTER_INSERT, 'person_details', function(QueryObject $qo, QueryBuilderHandler $qb, $insertId)
968970
{
969971
$qb
970972
->table('person_details')
@@ -978,7 +980,7 @@ $queryBuilder->registerEvent(EventHandler::EVENT_AFTER_INSERT, 'person_details',
978980
After deleting from `my_table` delete the relations:
979981

980982
```php
981-
$queryBuilder->registerEvent(EventHandler::EVENT_AFTER_DELETE, 'my_table', function(QueryBuilderHandler $qb, $queryObject)
983+
$queryBuilder->registerEvent(EventHandler::EVENT_AFTER_DELETE, 'my_table', function(QueryObject $qo, QueryBuilderHandler $qb)
982984
{
983985
$bindings = $queryObject->getBindings();
984986
$qb
@@ -994,6 +996,7 @@ If something other than `null` is returned from the `before-*` query handler, th
994996

995997
Only on `after-*` events you get three parameters: **first** is the query builder, **third** is the execution time as float and **the second** varies:
996998

999+
- On `after-query` fires after a raw query has been executed.
9971000
- On `after-select` you get the `results` obtained from `select`.
9981001
- On `after-insert` you get the insert id (or array of ids in case of batch insert)
9991002
- On `after-delete` you get the [query object](#get-built-query) (same as what you get from `getQuery()`), from it you can get SQL and Bindings.

0 commit comments

Comments
 (0)