PluginProbe
VikBooking Hotel Booking Engine & PMS / 1.8.16
VikBooking Hotel Booking Engine & PMS v1.8.16
1.8.16 1.8.15 1.8.14 1.8.13 1.8.12 1.8.11 1.8.10 1.8.9 1.8.6 1.8.7 1.8.8 trunk 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.6.9 1.7.0 1.7.1 1.7.2 All 37 releases
← All changes | libraries/adapter/toolbar/button/standard.php +96 -0 1.6.3 → 1.8.16 View file →
@@ -1,0 +1,96 @@
1 +<?php
2 +/**
3 + * @package VikWP - Libraries
4 + * @subpackage adapter.toolbar
5 + * @author E4J s.r.l.
6 + * @copyright Copyright (C) 2023 E4J s.r.l. All Rights Reserved.
7 + * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
8 + * @link https://vikwp.com
9 + */
10 +
11 +// No direct access
12 +defined('ABSPATH') or die('No script kiddies please!');
13 +
14 +JLoader::import('adapter.toolbar.button.base');
15 +
16 +/**
17 + * Plugin standard button toolbar handler.
18 + *
19 + * @since 10.0
20 + */
21 +class JToolbarButtonStandard extends JToolbarButtonBase
22 +{
23 + /**
24 + * @override
25 + * The name/type of the button.
26 + *
27 + * @var string
28 + */
29 + protected $_name = 'Standard';
30 +
31 + /**
32 + * @override
33 + * The layout id for the rendering of the button.
34 + *
35 + * @var string
36 + */
37 + protected $_layoutId = 'html.toolbar.button.standard';
38 +
39 + /**
40 + * A list of button options.
41 + *
42 + * @var array
43 + */
44 + protected $options = array();
45 +
46 + /**
47 + * @override
48 + * Method to setup the button.
49 + *
50 + * @param string $icon The button icon.
51 + * @param string $alt The button text.
52 + * @param string $task The form task to launch.
53 + * @param boolean $check If true, it is mandatory the selection of the rows.
54 + *
55 + * @return void
56 + */
57 + protected function setup($icon = '', $alt = '', $task = '', $check = false)
58 + {
59 + $this->options['icon'] = $icon;
60 + $this->options['text'] = JText::translate($alt);
61 + $this->options['class'] = strtolower(preg_replace("/[^a-zA-Z0-9_\-]+/", '-', $icon));
62 + $this->options['id'] = 'jbutton-' . strtolower(preg_replace("/[^a-zA-Z0-9_\-]+/", '-', $task));
63 + $this->options['action'] = $this->getCommand($task, $check);
64 + }
65 +
66 + /**
67 + * @override
68 + * Returns an array containing the data to use for the button rendering.
69 + *
70 + * @return array Display data array.
71 + */
72 + public function getDisplayData()
73 + {
74 + return $this->options;
75 + }
76 +
77 + /**
78 + * Returns the javascript onclick event to launch.
79 + *
80 + * @param string $task The form task to launch.
81 + * @param boolean $check If true, it is mandatory the selection of the rows.
82 + *
83 + * @return string The onclick event.
84 + */
85 + protected function getCommand($task, $check = false)
86 + {
87 + $cmd = "Joomla.submitbutton('{$task}');";
88 +
89 + if ($check)
90 + {
91 + $cmd = "if (Joomla.hasChecked()) { $cmd } else { alert('" . addslashes(JText::translate('PLEASE_MAKE_A_SELECTION')) . "'); }";
92 + }
93 +
94 + return $cmd;
95 + }
96 +}