PluginProbe
Booking for Appointments and Events Calendar – Amelia / 2.4.2
Booking for Appointments and Events Calendar – Amelia v2.4.2
2.4.9 2.4.8 2.4.7 2.4.6 2.4.5 2.4.4 2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 All 59 releases
ameliabooking / src / Infrastructure / WP / ShortcodeService / CatalogShortcodeService.php

CatalogShortcodeService.php in Booking for Appointments and Events Calendar – Amelia 2.4.2, at src/Infrastructure/WP/ShortcodeService/CatalogShortcodeService.php

82 lines 2.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 /**
4 * @copyright © Melograno Ventures. All rights reserved.
5 * @licence See LICENCE.md for license details.
6 */
7
8 namespace AmeliaBooking\Infrastructure\WP\ShortcodeService;
9
10 use AmeliaBooking\Domain\Common\Exceptions\InvalidArgumentException;
11 use AmeliaBooking\Domain\Entity\Entities;
12
13 /**
14 * Class CatalogShortcodeService
15 *
16 * @package AmeliaBooking\Infrastructure\WP\ShortcodeService
17 */
18 class CatalogShortcodeService extends AmeliaShortcodeService
19 {
20 /**
21 * @param array $atts
22 * @return string
23 * @throws InvalidArgumentException
24 */
25 public static function shortcodeHandler($atts)
26 {
27 $atts = shortcode_atts(
28 [
29 'trigger' => '',
30 'show' => '',
31 'package' => null,
32 'category' => null,
33 'service' => null,
34 'employee' => null,
35 'location' => null,
36 'counter' => self::$counter
37 ],
38 $atts
39 );
40
41 self::prepareScriptsAndStyles();
42
43 // Single Category View
44 if ($atts['category'] !== null) {
45 ob_start();
46 include AMELIA_PATH . '/view/frontend/category.inc.php';
47 $html = ob_get_contents();
48 ob_end_clean();
49
50 return $html;
51 }
52
53 // Single Service View
54 if ($atts['service'] !== null) {
55 ob_start();
56 include AMELIA_PATH . '/view/frontend/service.inc.php';
57 $html = ob_get_contents();
58 ob_end_clean();
59
60 return $html;
61 }
62
63 // Single Package View
64 if ($atts['package'] !== null) {
65 ob_start();
66 include AMELIA_PATH . '/view/frontend/package.inc.php';
67 $html = ob_get_contents();
68 ob_end_clean();
69
70 return $html;
71 }
72
73 // All Categories View
74 ob_start();
75 include AMELIA_PATH . '/view/frontend/catalog.inc.php';
76 $html = ob_get_contents();
77 ob_end_clean();
78
79 return $html;
80 }
81 }
82