diff --git a/VERSION.txt b/VERSION.txt index b046aad771ea..d781ee7951ab 100644 --- a/VERSION.txt +++ b/VERSION.txt @@ -1 +1 @@ -5.0.10 \ No newline at end of file +5.0.12 \ No newline at end of file diff --git a/app/Http/Controllers/Auth/LoginController.php b/app/Http/Controllers/Auth/LoginController.php index 5dd43a5ace30..ecc72ff77040 100644 --- a/app/Http/Controllers/Auth/LoginController.php +++ b/app/Http/Controllers/Auth/LoginController.php @@ -243,7 +243,7 @@ class LoginController extends BaseController public function refresh(Request $request) { $ct = CompanyUser::whereUserId(auth()->user()->id); - return $this->listResponse($ct); + return $this->refreshResponse($ct); } /** diff --git a/app/Http/Controllers/BaseController.php b/app/Http/Controllers/BaseController.php index 2c4ff1fc26e8..9522eccb5ae5 100644 --- a/app/Http/Controllers/BaseController.php +++ b/app/Http/Controllers/BaseController.php @@ -130,6 +130,51 @@ class BaseController extends Controller return response()->make($error, $httpErrorCode, $headers); } + protected function refreshResponse($query) + { + $this->buildManager(); + + $transformer = new $this->entity_transformer(Input::get('serializer')); + + $includes = $transformer->getDefaultIncludes(); + + $includes = $this->getRequestIncludes($includes); + + $updated_at = request()->has('updated_at') ? request()->input('updated_at') : 0; + $updated_at = date('Y-m-d H:i:s', $updated_at); + + $query->with( + [ + 'company' => function ($query) use($updated_at){$query->where('updated_at', '>=', $updated_at);}, + 'company.activities' => function ($query) use($updated_at){$query->where('updated_at', '>=', $updated_at);}, + 'company.clients' =>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.tax_rates'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.groups'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.company_gateways'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.clients.contacts'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.products'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.invoices.invitations'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.invoices.invitations'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.invoices.documents'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.payments.paymentables'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.quotes.invitations'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.quotes.documents'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.credits.invitations'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.credits'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.payment_terms'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.vendors'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.expenses'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.tasks'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.projects'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + 'company.designs'=>function ($query) use($updated_at){$query->where('updated_at', '>', $updated_at);}, + ] + ); + + $data = $this->createCollection($query, $transformer, $this->entity_type); + + return $this->response($data); + } + protected function listResponse($query) { $this->buildManager(); diff --git a/app/Http/Middleware/QueryLogging.php b/app/Http/Middleware/QueryLogging.php index 659612e4d831..629f41a3ba30 100644 --- a/app/Http/Middleware/QueryLogging.php +++ b/app/Http/Middleware/QueryLogging.php @@ -51,7 +51,7 @@ class QueryLogging // Log::info($request->method() . ' - ' . $request->url() . ": $count queries - " . $time); //if($count > 10) - // Log::info($queries); + Log::info($queries); } } diff --git a/app/Http/Requests/Webhook/StoreWebhookRequest.php b/app/Http/Requests/Webhook/StoreWebhookRequest.php index 0a26520479d7..8ac21eeda971 100644 --- a/app/Http/Requests/Webhook/StoreWebhookRequest.php +++ b/app/Http/Requests/Webhook/StoreWebhookRequest.php @@ -30,7 +30,7 @@ class StoreWebhookRequest extends Request public function rules() { return [ - 'target_url' => 'required', + 'target_url' => 'required|url', 'event_id' => 'required', ]; } diff --git a/app/Http/Requests/Webhook/UpdateWebhookRequest.php b/app/Http/Requests/Webhook/UpdateWebhookRequest.php index d50929606ae8..622955894995 100644 --- a/app/Http/Requests/Webhook/UpdateWebhookRequest.php +++ b/app/Http/Requests/Webhook/UpdateWebhookRequest.php @@ -34,6 +34,7 @@ class UpdateWebhookRequest extends Request public function rules() { return [ + 'target_url' => 'url', ]; } diff --git a/app/Jobs/Util/WebhookHandler.php b/app/Jobs/Util/WebhookHandler.php index 0212fc08a465..e691a0773a72 100644 --- a/app/Jobs/Util/WebhookHandler.php +++ b/app/Jobs/Util/WebhookHandler.php @@ -64,7 +64,7 @@ class WebhookHandler implements ShouldQueue // generate JSON data $manager = new Manager(); $manager->setSerializer(new ArraySerializer()); - $manager->parseIncludes($include); + // $manager->parseIncludes($include); $transformer = new $this->getTransformerClassName();