Current Path :
/
home
/
develito
/
public_html
/
libraries-new
/
syw2
/
fields
/
Or
Select Your Path :
Upload File :
New :
File
Dir
/home/develito/public_html/libraries-new/syw2/fields/sywiconpicker.php
<?php /** * @copyright Copyright (C) 2011 Simplify Your Web, Inc. All rights reserved. * @license GNU General Public License version 3 or later; see LICENSE.txt */ // no direct access defined('_JEXEC') or die ; jimport('joomla.form.formfield'); /** * * @author Olivier Buisard * * for Joomla 3+ ONLY * * field parameters * * icons: coma separated transition names (no SYWicon- prefix) * icongroups: coma separated transition groups * emptyicon: the icon to show as default * buttonlabel: the label for the default button * buttonrole: [clear|default] * help: help field * icomoon: add icomoon icons * editable: see the input field * */ class JFormFieldSYWIconPicker extends JFormField { public $type = 'SYWIconPicker'; protected $icons; protected $icongroups; protected $emptyicon; protected $buttonlabel; protected $buttonrole; protected $help; protected $icomoon; protected $editable; protected function getIconGroup($icongroup) { $icons = array(); switch ($icongroup) { case 'communications': $icons[] = 'email'; $icons[] = 'mail_outline'; $icons[] = 'drafts'; $icons[] = 'inbox2'; $icons[] = 'dialpad'; $icons[] = 'phone-android'; $icons[] = 'phone-iphone'; $icons[] = 'phone'; $icons[] = 'call'; $icons[] = 'phone_forwarded'; $icons[] = 'phone_in_talk'; $icons[] = 'call_end'; $icons[] = 'skype'; $icons[] = 'fax'; $icons[] = 'record_voice_over'; $icons[] = 'voicemail'; $icons[] = 'messenger'; $icons[] = 'textsms'; $icons[] = 'chat2'; $icons[] = 'question_answer'; break; case 'equipment': $icons[] = 'computer'; $icons[] = 'desktop-windows'; $icons[] = 'desktop_mac'; $icons[] = 'tablet-android'; $icons[] = 'tv'; $icons[] = 'keyboard2'; $icons[] = 'keyboard-voice'; $icons[] = 'mouse2'; $icons[] = 'watch'; $icons[] = 'camera'; $icons[] = 'camera-alt'; $icons[] = 'devices_other'; $icons[] = 'videogame_asset'; $icons[] = 'router'; $icons[] = 'wifi'; $icons[] = 'bluetooth'; break; case 'transportation': $icons[] = 'directions-bike'; $icons[] = 'directions-bus'; $icons[] = 'directions-car'; $icons[] = 'directions-ferry'; $icons[] = 'directions-subway'; $icons[] = 'directions-train'; $icons[] = 'directions-walk'; $icons[] = 'subway'; $icons[] = 'train'; $icons[] = 'tram'; $icons[] = 'local-shipping'; $icons[] = 'local-taxi'; $icons[] = 'traff'; $icons[] = 'flight'; $icons[] = 'flight_land'; $icons[] = 'flight_takeoff'; $icons[] = 'motorcycle'; $icons[] = 'airport_shuttle'; $icons[] = 'local_gas_station'; $icons[] = 'directions'; $icons[] = 'directions2'; break; case 'location': $icons[] = 'home'; $icons[] = 'explore'; $icons[] = 'my_location'; $icons[] = 'location-on'; $icons[] = 'location_searching'; $icons[] = 'person_pin_circle'; $icons[] = 'gps-fixed'; $icons[] = 'near_me'; $icons[] = 'hotel'; $icons[] = 'local-attraction'; $icons[] = 'local-bar'; $icons[] = 'local-cafe'; $icons[] = 'local-florist'; $icons[] = 'local-hospital'; $icons[] = 'local-library'; $icons[] = 'books'; $icons[] = 'local-mall'; $icons[] = 'local-parking'; $icons[] = 'local-pizza'; $icons[] = 'map'; $icons[] = 'navigation'; $icons[] = 'restaurant-menu'; $icons[] = 'store-mall-directory'; $icons[] = 'location-city'; $icons[] = 'publ'; $icons[] = 'school'; $icons[] = 'office'; $icons[] = 'building'; $icons[] = 'paw'; $icons[] = 'spoon'; $icons[] = 'futbol-o'; $icons[] = 'weekend'; $icons[] = 'airline_seat_individual_suite'; $icons[] = 'airline_seat_recline_extra'; $icons[] = 'airline_seat_recline_normal'; $icons[] = 'wc'; $icons[] = 'beach_access'; $icons[] = 'business_center'; $icons[] = 'casino'; $icons[] = 'fitness_center'; $icons[] = 'free_breakfast'; $icons[] = 'golf_course'; $icons[] = 'pool'; $icons[] = 'theaters'; $icons[] = 'nature'; $icons[] = 'nature_people'; break; case 'social': $icons[] = 'group'; $icons[] = 'supervisor_account'; $icons[] = 'person'; $icons[] = 'person_outline'; $icons[] = 'share2'; $icons[] = 'omega'; $icons[] = 'blogger'; $icons[] = 'chat'; $icons[] = 'comment'; $icons[] = 'vcard'; $icons[] = 'insert-emoticon'; $icons[] = 'favorite'; $icons[] = 'thumb-down'; $icons[] = 'thumb-up'; $icons[] = 'thumbs-up-down'; $icons[] = 'star'; $icons[] = 'star-half'; $icons[] = 'star-outline'; $icons[] = 'flickr'; $icons[] = 'vimeo'; $icons[] = 'twitter'; $icons[] = 'facebook'; $icons[] = 'google'; $icons[] = 'googleplus'; $icons[] = 'pinterest'; $icons[] = 'tumblr'; $icons[] = 'linkedin'; $icons[] = 'dribbble'; $icons[] = 'stumbleupon'; $icons[] = 'lastfm'; $icons[] = 'spotify'; $icons[] = 'instagram'; $icons[] = 'circles'; $icons[] = 'youtube-play'; $icons[] = 'recent_actors'; $icons[] = 'contacts'; $icons[] = 'import_contacts'; break; case 'agenda': $icons[] = 'alarm'; $icons[] = 'calendar'; $icons[] = 'event'; $icons[] = 'today'; $icons[] = 'event-note'; $icons[] = 'view-agenda'; $icons[] = 'watch_later'; $icons[] = 'timelapse'; $icons[] = 'timer'; $icons[] = 'access_time'; $icons[] = 'event_seat'; $icons[] = 'trophy'; $icons[] = 'gift'; $icons[] = 'cake'; $icons[] = 'birthday-cake'; $icons[] = 'cake2'; $icons[] = 'timeline'; break; case 'finances': $icons[] = 'account-balance'; $icons[] = 'account-box'; $icons[] = 'credit-card'; $icons[] = 'receipt'; $icons[] = 'shopping-cart'; $icons[] = 'wallet-giftcard'; $icons[] = 'wallet-membership'; $icons[] = 'attach-money'; $icons[] = 'paypal'; $icons[] = 'google-wallet'; $icons[] = 'cc-visa'; $icons[] = 'cc-mastercard'; $icons[] = 'cc-discover'; $icons[] = 'cc-amex'; $icons[] = 'euro_symbol'; break; case 'files': $icons[] = 'sd-storage'; $icons[] = 'storage'; $icons[] = 'attach-file'; $icons[] = 'attachment'; $icons[] = 'insert-drive-file'; $icons[] = 'description'; $icons[] = 'file-download'; $icons[] = 'file-upload'; $icons[] = 'folder'; $icons[] = 'dropbox'; $icons[] = 'evernote'; $icons[] = 'picasa'; $icons[] = 'archive'; $icons[] = 'unarchive'; $icons[] = 'cloud'; break; case 'systems': $icons[] = 'stack-overflow'; $icons[] = 'apple'; $icons[] = 'windows'; $icons[] = 'android'; $icons[] = 'linux'; $icons[] = 'wordpress'; $icons[] = 'drupal'; $icons[] = 'joomla'; $icons[] = 'verified-user'; $icons[] = 'security'; $icons[] = 'bug-report'; $icons[] = 'settings'; break; case 'accessibility': $icons[] = 'hearing'; $icons[] = 'accessibility'; $icons[] = 'accessible'; $icons[] = 'touch_app'; break; case 'media': $icons[] = 'movie'; $icons[] = 'movie_filter'; $icons[] = 'subtitles'; $icons[] = 'music_note'; $icons[] = 'queue_music'; $icons[] = 'music_video'; $icons[] = 'playlist_play'; $icons[] = 'playlist_add_check'; $icons[] = 'slow_motion_video'; $icons[] = 'album'; $icons[] = 'speaker'; $icons[] = 'camera_roll'; $icons[] = 'photo_filter'; $icons[] = 'radio'; $icons[] = 'videocam'; break; case 'other': $icons[] = 'assignment'; $icons[] = 'book'; $icons[] = 'bookmark'; $icons[] = 'help'; $icons[] = 'info2'; $icons[] = 'label'; $icons[] = 'language'; $icons[] = 'language2'; $icons[] = 'picture-in-picture'; $icons[] = 'query-builder'; $icons[] = 'stars'; $icons[] = 'extension'; $icons[] = 'dashboard'; $icons[] = 'format-quote'; $icons[] = 'view-carousel'; $icons[] = 'visibility'; $icons[] = 'equalizer'; $icons[] = 'games'; $icons[] = 'add-circle'; $icons[] = 'content-paste'; $icons[] = 'create'; $icons[] = 'flag'; $icons[] = 'forward'; $icons[] = 'remove-circle'; $icons[] = 'save'; $icons[] = 'dvr'; $icons[] = 'now-wallpaper'; $icons[] = 'now-widgets'; $icons[] = 'insert-photo'; $icons[] = 'color-lens'; $icons[] = 'filter-frames'; $icons[] = 'healing'; $icons[] = 'style'; $icons[] = 'wb-sunny'; $icons[] = 'apps'; $icons[] = 'check-box'; $icons[] = 'radio-button-on'; $icons[] = 'pushpin'; $icons[] = 'quotes-right'; $icons[] = 'power-cord'; $icons[] = 'tag'; $icons[] = 'leaf'; $icons[] = 'newspaper'; $icons[] = 'lifebuoy'; $icons[] = 'work'; $icons[] = 'briefcase'; $icons[] = 'hourglass'; $icons[] = 'gauge'; $icons[] = 'network'; $icons[] = 'key'; $icons[] = 'vpn_key'; $icons[] = 'suitcase'; $icons[] = 'light-bulb'; $icons[] = 'box'; $icons[] = 'ticket'; $icons[] = 'rss'; $icons[] = 'pie'; $icons[] = 'lock'; $icons[] = 'lock-open'; $icons[] = 'info'; $icons[] = 'docs'; $icons[] = 'tag2'; $icons[] = 'tags'; $icons[] = 'chain'; $icons[] = 'sitemap'; $icons[] = 'new-releases'; $icons[] = 'droplets'; $icons[] = 'fiber_new'; $icons[] = 'art_track'; $icons[] = 'web_asset'; $icons[] = 'highlight'; $icons[] = 'developer_board'; $icons[] = 'filter_vintage'; $icons[] = 'power'; $icons[] = 'build'; $icons[] = 'fingerprint'; $icons[] = 'pets'; $icons[] = 'rowing'; $icons[] = 'pan_tool'; $icons[] = 'ac_unit'; $icons[] = 'child_care'; $icons[] = 'child_friendly'; $icons[] = 'hot_tub'; $icons[] = 'kitchen'; $icons[] = 'room_service'; $icons[] = 'smoke_free'; $icons[] = 'smoking_rooms'; $icons[] = 'spa'; $icons[] = 'goat'; $icons[] = 'update'; $icons[] = 'launch'; $icons[] = 'toys'; break; case 'icomoon': // icons compatible from J3.1 throughout J3.8 $icons[] = 'icomoon-home'; $icons[] = 'icomoon-user'; $icons[] = 'icomoon-lock'; $icons[] = 'icomoon-comment'; $icons[] = 'icomoon-comments-2'; $icons[] = 'icomoon-edit'; $icons[] = 'icomoon-pencil-2'; $icons[] = 'icomoon-folder-open'; $icons[] = 'icomoon-folder-close'; $icons[] = 'icomoon-picture'; $icons[] = 'icomoon-pictures'; $icons[] = 'icomoon-list'; $icons[] = 'icomoon-power-cord'; $icons[] = 'icomoon-cube'; $icons[] = 'icomoon-puzzle'; $icons[] = 'icomoon-flag'; $icons[] = 'icomoon-tools'; $icons[] = 'icomoon-cogs'; $icons[] = 'icomoon-options'; $icons[] = 'icomoon-equalizer'; $icons[] = 'icomoon-wrench'; $icons[] = 'icomoon-brush'; $icons[] = 'icomoon-eye'; $icons[] = 'icomoon-star-empty'; $icons[] = 'icomoon-star-2'; $icons[] = 'icomoon-star'; $icons[] = 'icomoon-calendar'; $icons[] = 'icomoon-calendar-2'; $icons[] = 'icomoon-help'; $icons[] = 'icomoon-support'; $icons[] = 'icomoon-warning'; $icons[] = 'icomoon-ok'; $icons[] = 'icomoon-cancel'; $icons[] = 'icomoon-minus'; $icons[] = 'icomoon-trash'; $icons[] = 'icomoon-mail'; $icons[] = 'icomoon-mail-2'; $icons[] = 'icomoon-unarchive'; $icons[] = 'icomoon-archive'; $icons[] = 'icomoon-box-add'; $icons[] = 'icomoon-box-remove'; $icons[] = 'icomoon-search'; $icons[] = 'icomoon-filter'; $icons[] = 'icomoon-camera'; $icons[] = 'icomoon-play'; $icons[] = 'icomoon-music'; $icons[] = 'icomoon-grid-view'; $icons[] = 'icomoon-grid-view-2'; $icons[] = 'icomoon-menu'; $icons[] = 'icomoon-thumbs-up'; $icons[] = 'icomoon-thumbs-down'; $icons[] = 'icomoon-remove'; $icons[] = 'icomoon-plus-2'; $icons[] = 'icomoon-minus-2'; $icons[] = 'icomoon-key'; $icons[] = 'icomoon-quote'; $icons[] = 'icomoon-quote-2'; $icons[] = 'icomoon-database'; $icons[] = 'icomoon-location'; $icons[] = 'icomoon-zoom-in'; $icons[] = 'icomoon-zoom-out'; $icons[] = 'icomoon-expand'; $icons[] = 'icomoon-contract'; $icons[] = 'icomoon-expand-2'; $icons[] = 'icomoon-contract-2'; $icons[] = 'icomoon-health'; $icons[] = 'icomoon-wand'; $icons[] = 'icomoon-refresh'; $icons[] = 'icomoon-vcard'; $icons[] = 'icomoon-clock'; $icons[] = 'icomoon-compass'; $icons[] = 'icomoon-address'; $icons[] = 'icomoon-feed'; $icons[] = 'icomoon-flag-2'; $icons[] = 'icomoon-pin'; $icons[] = 'icomoon-lamp'; $icons[] = 'icomoon-chart'; $icons[] = 'icomoon-bars'; $icons[] = 'icomoon-pie'; $icons[] = 'icomoon-dashboard'; $icons[] = 'icomoon-lightning'; $icons[] = 'icomoon-move'; $icons[] = 'icomoon-loop'; $icons[] = 'icomoon-shuffle'; $icons[] = 'icomoon-printer'; $icons[] = 'icomoon-color-palette'; $icons[] = 'icomoon-camera-2'; $icons[] = 'icomoon-file'; $icons[] = 'icomoon-cart'; $icons[] = 'icomoon-basket'; $icons[] = 'icomoon-broadcast'; $icons[] = 'icomoon-screen'; $icons[] = 'icomoon-tablet'; $icons[] = 'icomoon-mobile'; $icons[] = 'icomoon-users'; $icons[] = 'icomoon-briefcase'; $icons[] = 'icomoon-download'; $icons[] = 'icomoon-upload'; $icons[] = 'icomoon-bookmark'; $icons[] = 'icomoon-out-2'; if (version_compare(JVERSION, '3.2', 'ge')) { $icons[] = 'icomoon-joomla'; $icons[] = 'icomoon-link'; $icons[] = 'icomoon-phone'; $icons[] = 'icomoon-phone-2'; $icons[] = 'icomoon-tag'; $icons[] = 'icomoon-tag-2'; $icons[] = 'icomoon-tags'; $icons[] = 'icomoon-tags-2'; $icons[] = 'icomoon-equalizer'; $icons[] = 'icomoon-unlock'; $icons[] = 'icomoon-scissors'; $icons[] = 'icomoon-book'; $icons[] = 'icomoon-calendar-3'; $icons[] = 'icomoon-shield'; $icons[] = 'icomoon-heart'; $icons[] = 'icomoon-smiley-happy'; $icons[] = 'icomoon-smiley-happy-2'; $icons[] = 'icomoon-smiley-sad'; $icons[] = 'icomoon-smiley-sad-2'; $icons[] = 'icomoon-smiley-neutral'; $icons[] = 'icomoon-smiley-neutral-2'; $icons[] = 'icomoon-credit'; $icons[] = 'icomoon-credit-2'; } } $iconlist = ''; foreach ($icons as $index => $icon_item) { if ($index == count($icons) - 1) { $iconlist .= '<li style="width: auto; float: left; margin: 2px 2px 10px 2px;" data-SYWicon="'.$icon_item.'">'; } else { $iconlist .= '<li style="width: auto; float: left; margin: 2px;" data-SYWicon="'.$icon_item.'">'; } $iconlist .= '<a href="#" class="label hvr-grow hasTooltip" style="padding: 8px; color: #fff; font-size: 1.4em" title="'.$icon_item.'" onclick="return false;"><i class="SYWicon-'.$icon_item.'"></i></a>'; $iconlist .= '</li>'; } return $iconlist; } protected function getIcons() { $iconlist = ''; $icongrouplist = array('communications', 'equipment', 'transportation', 'location', 'social', 'agenda', 'finances', 'files', 'systems', 'accessibility', 'media', 'other'); if ($this->icomoon) { $icongrouplist[] = 'icomoon'; } foreach ($icongrouplist as $icongrouplist_item) { $iconlist .= '<li class="divider" style="clear: both; width: auto; height: auto; padding: 3px; text-align: center; color: #797878 border: none;"><span>'.JText::_('LIB_SYW_ICONPICKER_ICONGROUP_'.strtoupper($icongrouplist_item)).'</span></li>'; $iconlist .= self::getIconGroup($icongrouplist_item); } return $iconlist; } protected function getInput() { $doc = JFactory::getDocument(); $lang = JFactory::getLanguage(); $lang->load('lib_syw.sys', JPATH_SITE); JHtml::_('bootstrap.tooltip'); JHtml::_('stylesheet', 'syw/fonts-min.css', false, true); JHtml::_('stylesheet', 'syw/2d-transitions-min.css', false, true); if ($this->icomoon) { JHtml::_('stylesheet', 'jui/icomoon.css', false, true); // make sure icomoon font is loaded JHtml::_('stylesheet', 'syw/fonts-icomoon-min.css', false, true); } $script = 'jQuery(document).ready(function () { '; // after load, select the saved value $script .= 'if (jQuery(\'#' . $this->id . '\').val() != "") { '; $script .= 'jQuery("#'.$this->id.'_select li a").each(function() { '; $script .= 'if (jQuery(this).parent().attr(\'data-SYWicon\') == jQuery(\'#' . $this->id . '\').val()) { '; $script .= 'jQuery(this).addClass("label-success"); '; $script .= '} '; $script .= '}); '; $script .= '} '; $script .= 'jQuery("#'.$this->id.'_select li").click(function() { '; // de-select the previous value $script .= 'jQuery("#'.$this->id.'_select li a").each(function() { '; $script .= 'jQuery(this).removeClass("label-success"); '; $script .= '}); '; // $script .= 'jQuery(\'#' . $this->id . '\').val(jQuery(this).attr(\'data-SYWicon\')); '; $script .= 'jQuery(\'#' . $this->id . '_icon\').attr(\'class\', \'SYWicon-\' + jQuery(this).attr(\'data-SYWicon\')); '; if ($this->buttonrole == 'default') { $script .= 'jQuery("#'.$this->id.'_default").removeClass("btn-primary"); '; } $script .= 'jQuery(this).children(":first").addClass("label-success"); '; $script .= '}); '; $script .= 'jQuery("#'.$this->id.'_default").click(function() { '; $script .= 'jQuery(\'#' . $this->id . '_icon\').attr(\'class\', \'\'); '; if (empty($this->default)) { $script .= 'jQuery(\'#' . $this->id . '\').val(\'\'); '; $script .= 'jQuery(\'#' . $this->id . '_icon\').attr(\'class\', \'SYWicon-'.$this->emptyicon.'\'); '; } else { $script .= 'jQuery(\'#' . $this->id . '\').val(\''.$this->default.'\'); '; $script .= 'jQuery(\'#' . $this->id . '_icon\').attr(\'class\', \'SYWicon-'.$this->default.'\'); '; } if ($this->buttonrole == 'default') { $script .= 'jQuery("#'.$this->id.'_default").addClass("btn-primary"); '; } $script .= 'jQuery("#'.$this->id.'_select li a").removeClass("label-success"); '; $script .= '}); '; $script .= 'jQuery("#'.$this->id.'").change(function() { '; $script .= 'jQuery(\'#' . $this->id . '_icon\').attr(\'class\', \'SYWicon-\' + jQuery("#'.$this->id.'").val()); '; $script .= 'jQuery("#'.$this->id.'_select li a").each(function() { '; $script .= 'jQuery(this).removeClass("label-success"); '; $script .= 'if (jQuery(this).parent().attr(\'data-SYWicon\') == jQuery(\'#' . $this->id . '\').val()) { '; $script .= 'jQuery(this).addClass("label-success"); '; $script .= '} '; $script .= '}); '; $script .= '}); '; $script .= '}); '; $doc->addScriptDeclaration($script); $html = ''; $html .= '<div class="input-prepend input-append">'; if (!empty($this->value)) { $html .= '<div class="add-on"><i id="'.$this->id.'_icon" class="SYWicon-'.$this->value.'"></i></div>'; } else { if (empty($this->default)) { $html .= '<div class="add-on"><i id="'.$this->id.'_icon" class="SYWicon-'.$this->emptyicon.'"></i></div>'; } else { $html .= '<div class="add-on"><i id="'.$this->id.'_icon" class="SYWicon-'.$this->default.'"></i></div>'; } } if ($this->editable) { $html .= '<input type="text" name="'.$this->name.'" id="'.$this->id.'"'.' value="'.htmlspecialchars($this->value, ENT_COMPAT, 'UTF-8').'" class="input-small" />'; } else { //$html .= '<input type="hidden" name="'.$this->name.'" id="'.$this->id.'"'.' value="'.htmlspecialchars($this->value, ENT_COMPAT, 'UTF-8').'" />'; $html .= '<input type="text" name="'.$this->name.'" id="'.$this->id.'"'.' value="'.htmlspecialchars($this->value, ENT_COMPAT, 'UTF-8').'" readonly="readonly" class="input-small" />'; } $html .= '<div class="btn-group" style="display:inline-block;vertical-align:middle">'; $html .= '<button id="'.$this->id.'_caret"'.($this->disabled ? ' disabled="disabled"' : '').' style="border-radius:0;margin-left:-1px;min-width:auto" class="btn dropdown-toggle hasTooltip" data-toggle="dropdown" title="' . JText::_('LIB_SYW_ICONPICKER_SELECTICON') . '">'; $html .= '<span class="caret" style="margin-bottom:auto"></span>'; $html .= '</button>'; $html .= '<ul id="'.$this->id.'_select" class="dropdown-menu" style="min-width: 250px; max-height: 200px; overflow: auto">'; if (isset($this->icons)) { $icons = explode(",", $this->icons); foreach ($icons as $icon_item) { $html .= '<li style="width: auto; float: left; margin: 2px;" data-SYWicon="'.$icon_item.'"><a href="#" class="label hvr-grow hasTooltip" style="padding: 8px; color: #fff; font-size: 1.4em" title="'.$icon_item.'" onclick="return false;"><i class="SYWicon-'.$icon_item.'"></i></a></li>'; } } else if (isset($this->icongroups)) { $icongroups = explode(",", $this->icongroups); foreach ($icongroups as $icongroup_item) { $html .= '<li class="divider" style="clear: both; width: auto; height: auto; padding: 3px; text-align: center; color: #797878; border: none;"><span>'.JText::_('LIB_SYW_ICONPICKER_ICONGROUP_'.strtoupper($icongroup_item)).'</span></li>'; $html .= self::getIconGroup($icongroup_item); } } else { $html .= self::getIcons(); } $html .= '</ul>'; $html .= '</div>'; $default_class_extra = ''; if (empty($this->value) || (!empty($this->default) && $this->default == $this->value)) { if ($this->buttonrole == 'default') { $default_class_extra = ' btn-primary'; } } $html .= '<a id="'.$this->id.'_default"'.($this->disabled ? ' disabled="disabled"' : '').' class="btn'.$default_class_extra.' hasTooltip" title="'.htmlspecialchars($this->buttonlabel, ENT_COMPAT, 'UTF-8').'" href="#" onclick="return false;">'; if ($this->buttonrole == 'clear') { $html .= '<i class="icon-remove"></i>'; } else { $html .= $this->buttonlabel; } $html .= '</a>'; $html .= '</div>'; if ($this->help) { $html .= '<span class="help-block">'.JText::_($this->help).'</span>'; } return $html; } public function setup(SimpleXMLElement $element, $value, $group = null) { $return = parent::setup($element, $value, $group); if ($return) { $this->icons = isset($this->element['icons']) ? $this->element['icons'] : null; $this->icongroups = isset($this->element['icongroups']) ? $this->element['icongroups'] : null; $this->help = isset($this->element['help']) ? $this->element['help'] : ''; if (strpos($this->id, 'X__') !== false) { // this happens if included in subform $this->help = JText::_('LIB_SYW_GLOBAL_UNSELECTABLE'); $this->disabled = true; } $this->icomoon = isset($this->element['icomoon']) ? filter_var($this->element['icomoon'], FILTER_VALIDATE_BOOLEAN) : false; $this->editable = isset($this->element['editable']) ? filter_var($this->element['editable'], FILTER_VALIDATE_BOOLEAN) : false; $this->buttonrole = isset($this->element['buttonrole']) ? JText::_($this->element['buttonrole']) : 'default'; $this->buttonlabel = isset($this->element['buttonlabel']) ? JText::_($this->element['buttonlabel']) : ($this->buttonrole == 'clear' ? JText::_('JCLEAR') : JText::_('JDEFAULT')); $this->emptyicon = isset($this->element['emptyicon']) ? $this->element['emptyicon'] : ($this->buttonrole == 'default' ? 'question' : ''); } return $return; } } ?>