ruạṛ
<?php /** * Invoice Ninja (https://invoiceninja.com). * * @link https://github.com/invoiceninja/invoiceninja source repository * * @copyright Copyright (c) 2024. Invoice Ninja LLC (https://invoiceninja.com) * * @license https://www.elastic.co/licensing/elastic-license */ namespace App\Http\Controllers; use App\Utils\TemplateEngine; use App\Utils\Traits\MakesHash; use App\Utils\Traits\MakesInvoiceHtml; use App\Utils\Traits\MakesTemplateData; use Illuminate\Http\Response; class TemplateController extends BaseController { use MakesHash; use MakesTemplateData; use MakesInvoiceHtml; public function __construct() { parent::__construct(); } /** * Returns a template filled with entity variables. * * @return Response| \Illuminate\Http\JsonResponse * * @OA\Post( * path="/api/v1/templates", * operationId="getShowTemplate", * tags={"templates"}, * summary="Returns a entity template with the template variables replaced with the Entities", * description="Returns a entity template with the template variables replaced with the Entities", * @OA\Parameter(ref="#/components/parameters/X-Requested-With"), * @OA\RequestBody( * description="The template subject and body", * required=true, * @OA\MediaType( * mediaType="application/json", * @OA\Schema( * type="object", * @OA\Property( * property="subject", * description="The email template subject", * type="string", * ), * @OA\Property( * property="body", * description="The email template body", * type="string", * ), * ) * ) * ), * @OA\Response( * response=200, * description="The template response", * @OA\Header(header="X-MINIMUM-CLIENT-VERSION", ref="#/components/headers/X-MINIMUM-CLIENT-VERSION"), * @OA\Header(header="X-RateLimit-Remaining", ref="#/components/headers/X-RateLimit-Remaining"), * @OA\Header(header="X-RateLimit-Limit", ref="#/components/headers/X-RateLimit-Limit"), * @OA\JsonContent(ref="#/components/schemas/Template"), * ), * @OA\Response( * response=422, * description="Validation error", * @OA\JsonContent(ref="#/components/schemas/ValidationError"), * ), * @OA\Response( * response="default", * description="Unexpected Error", * @OA\JsonContent(ref="#/components/schemas/Error"), * ), * ) */ public function show() { $entity = request()->has('entity') ? request()->input('entity') : ''; $entity_id = request()->has('entity_id') ? request()->input('entity_id') : ''; $subject = request()->has('subject') ? request()->input('subject') : ''; $body = request()->has('body') ? request()->input('body') : ''; $template = request()->has('template') ? request()->input('template') : ''; $data = (new TemplateEngine($body, $subject, $entity, $entity_id, $template))->build(); return response()->json($data, 200); } }
cải xoăn