[ Index ] |
PHP Cross Reference of Joomla 4.2.2 documentation |
[Summary view] [Print] [Text view]
1 <?php 2 3 /** 4 * @package Joomla.Plugin 5 * @subpackage Webservices.Banners 6 * 7 * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> 8 * @license GNU General Public License version 2 or later; see LICENSE.txt 9 10 * @phpcs:disable PSR1.Classes.ClassDeclaration.MissingNamespace 11 */ 12 13 use Joomla\CMS\Plugin\CMSPlugin; 14 use Joomla\CMS\Router\ApiRouter; 15 use Joomla\Router\Route; 16 17 // phpcs:disable PSR1.Files.SideEffects 18 \defined('_JEXEC') or die; 19 // phpcs:enable PSR1.Files.SideEffects 20 21 /** 22 * Web Services adapter for com_banners. 23 * 24 * @since 4.0.0 25 */ 26 class PlgWebservicesBanners extends CMSPlugin 27 { 28 /** 29 * Load the language file on instantiation. 30 * 31 * @var boolean 32 * @since 4.0.0 33 */ 34 protected $autoloadLanguage = true; 35 36 /** 37 * Registers com_banners's API's routes in the application 38 * 39 * @param ApiRouter &$router The API Routing object 40 * 41 * @return void 42 * 43 * @since 4.0.0 44 */ 45 public function onBeforeApiRoute(&$router) 46 { 47 $router->createCRUDRoutes( 48 'v1/banners', 49 'banners', 50 ['component' => 'com_banners'] 51 ); 52 53 $router->createCRUDRoutes( 54 'v1/banners/clients', 55 'clients', 56 ['component' => 'com_banners'] 57 ); 58 59 $router->createCRUDRoutes( 60 'v1/banners/categories', 61 'categories', 62 ['component' => 'com_categories', 'extension' => 'com_banners'] 63 ); 64 65 $this->createContentHistoryRoutes($router); 66 } 67 68 /** 69 * Create contenthistory routes 70 * 71 * @param ApiRouter &$router The API Routing object 72 * 73 * @return void 74 * 75 * @since 4.0.0 76 */ 77 private function createContentHistoryRoutes(&$router) 78 { 79 $defaults = [ 80 'component' => 'com_contenthistory', 81 'type_alias' => 'com_banners.banner', 82 'type_id' => 9, 83 ]; 84 $getDefaults = array_merge(['public' => false], $defaults); 85 86 $routes = [ 87 new Route(['GET'], 'v1/banners/:id/contenthistory', 'history.displayList', ['id' => '(\d+)'], $getDefaults), 88 new Route(['PATCH'], 'v1/banners/:id/contenthistory/keep', 'history.keep', ['id' => '(\d+)'], $defaults), 89 new Route(['DELETE'], 'v1/banners/:id/contenthistory', 'history.delete', ['id' => '(\d+)'], $defaults), 90 ]; 91 92 $router->addRoutes($routes); 93 } 94 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Wed Sep 7 05:41:13 2022 | Chilli.vc Blog - For Webmaster,Blog-Writer,System Admin and Domainer |