mirror of
https://github.com/EGroupware/egroupware.git
synced 2025-01-20 12:58:46 +01:00
Set statustext value as text by default
- Introduce new boolean attribute called statustext_html in case we want explicitly statustext gets rendered as html - Fix Calendar tooltip with new statustext_html attribute
This commit is contained in:
parent
7c7b1711e5
commit
0ececf8c78
@ -32,6 +32,12 @@ var et2_baseWidget = (function(){ "use strict"; return et2_DOMWidget.extend(et2_
|
|||||||
"description": "Tooltip which is shown for this element",
|
"description": "Tooltip which is shown for this element",
|
||||||
"translate": true
|
"translate": true
|
||||||
},
|
},
|
||||||
|
"statustext_html": {
|
||||||
|
"name": "Tooltip is html",
|
||||||
|
"type": "boolean",
|
||||||
|
"description": "Flag to allow html content in tooltip",
|
||||||
|
"default": false
|
||||||
|
},
|
||||||
"align": {
|
"align": {
|
||||||
"name": "Align",
|
"name": "Align",
|
||||||
"type": "string",
|
"type": "string",
|
||||||
@ -277,7 +283,7 @@ var et2_baseWidget = (function(){ "use strict"; return et2_DOMWidget.extend(et2_
|
|||||||
|
|
||||||
if (_value && _value != '')
|
if (_value && _value != '')
|
||||||
{
|
{
|
||||||
this.egw().tooltipBind(elem, _value);
|
this.egw().tooltipBind(elem, _value, this.options.statustext_html);
|
||||||
this._tooltipElem = elem;
|
this._tooltipElem = elem;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -106,8 +106,9 @@ egw.extend('tooltip', egw.MODULE_WND_LOCAL, function(_app, _wnd)
|
|||||||
* Creates the tooltip_div with the given text.
|
* Creates the tooltip_div with the given text.
|
||||||
*
|
*
|
||||||
* @param {string} _html
|
* @param {string} _html
|
||||||
|
* @param {boolean} _isHtml if set to true content gets appended as html
|
||||||
*/
|
*/
|
||||||
function prepare(_html)
|
function prepare(_html, _isHtml)
|
||||||
{
|
{
|
||||||
// Free and null the old tooltip_div
|
// Free and null the old tooltip_div
|
||||||
hide();
|
hide();
|
||||||
@ -115,7 +116,14 @@ egw.extend('tooltip', egw.MODULE_WND_LOCAL, function(_app, _wnd)
|
|||||||
//Generate the tooltip div, set it's text and append it to the body tag
|
//Generate the tooltip div, set it's text and append it to the body tag
|
||||||
tooltip_div = jQuery(_wnd.document.createElement('div'));
|
tooltip_div = jQuery(_wnd.document.createElement('div'));
|
||||||
tooltip_div.hide();
|
tooltip_div.hide();
|
||||||
tooltip_div.append(_html);
|
if (_isHtml)
|
||||||
|
{
|
||||||
|
tooltip_div.append(_html);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
tooltip_div.text(_html)
|
||||||
|
}
|
||||||
tooltip_div.addClass("egw_tooltip");
|
tooltip_div.addClass("egw_tooltip");
|
||||||
jQuery(_wnd.document.body).append(tooltip_div);
|
jQuery(_wnd.document.body).append(tooltip_div);
|
||||||
|
|
||||||
@ -156,14 +164,14 @@ egw.extend('tooltip', egw.MODULE_WND_LOCAL, function(_app, _wnd)
|
|||||||
* has to be a jQuery node.
|
* has to be a jQuery node.
|
||||||
* @param _html is the html code which should be shown as tooltip.
|
* @param _html is the html code which should be shown as tooltip.
|
||||||
*/
|
*/
|
||||||
tooltipBind: function(_elem, _html) {
|
tooltipBind: function(_elem, _html, _isHtml) {
|
||||||
if (_html != '')
|
if (_html != '')
|
||||||
{
|
{
|
||||||
_elem.bind('mouseenter.tooltip', function(e) {
|
_elem.bind('mouseenter.tooltip', function(e) {
|
||||||
if (_elem != current_elem)
|
if (_elem != current_elem)
|
||||||
{
|
{
|
||||||
//Prepare the tooltip
|
//Prepare the tooltip
|
||||||
prepare(_html);
|
prepare(_html, _isHtml);
|
||||||
|
|
||||||
// Set the current element the mouse is over and
|
// Set the current element the mouse is over and
|
||||||
// initialize the position variables
|
// initialize the position variables
|
||||||
|
@ -79,6 +79,7 @@ var et2_calendar_event = (function(){ "use strict"; return et2_valueWidget.exten
|
|||||||
// Tooltip
|
// Tooltip
|
||||||
if(!event._tooltipElem)
|
if(!event._tooltipElem)
|
||||||
{
|
{
|
||||||
|
event.options.statustext_html = true;
|
||||||
event.set_statustext(event._tooltip());
|
event.set_statustext(event._tooltip());
|
||||||
return event.div.trigger('mouseenter');
|
return event.div.trigger('mouseenter');
|
||||||
}
|
}
|
||||||
|
@ -14,10 +14,10 @@
|
|||||||
</columns>
|
</columns>
|
||||||
<rows>
|
<rows>
|
||||||
<row valign="top">
|
<row valign="top">
|
||||||
<image src="conflicts[$row][icon_participants]" statustext="@conflicts[$row][tooltip_participants]" no_lang="1"/>
|
<image src="conflicts[$row][icon_participants]" statustext_html="true" statustext="@conflicts[$row][tooltip_participants]" no_lang="1"/>
|
||||||
<image src="conflicts[$row][icon_recur]" label="@conflicts[$row][text_recur]" no_lang="1"/>
|
<image src="conflicts[$row][icon_recur]" label="@conflicts[$row][text_recur]" no_lang="1"/>
|
||||||
<description id="conflicts[$row][time]" no_lang="1"/>
|
<description id="conflicts[$row][time]" no_lang="1"/>
|
||||||
<vbox statustext="conflict[$row][tooltip]" orient=",0,0">
|
<vbox statustext="conflict[$row][tooltip]" statustext_html="true" orient=",0,0">
|
||||||
<description id="conflicts[$row][title]" no_lang="1" options="b"/>
|
<description id="conflicts[$row][title]" no_lang="1" options="b"/>
|
||||||
<description id="conflicts[$row][conflicting_participants]" no_lang="1"/>
|
<description id="conflicts[$row][conflicting_participants]" no_lang="1"/>
|
||||||
</vbox>
|
</vbox>
|
||||||
|
Loading…
Reference in New Issue
Block a user