mirror of
https://github.com/EGroupware/egroupware.git
synced 2025-06-24 20:01:36 +02:00
Add x to search for all browsers. One click brings up last search, click again to clear
This commit is contained in:
parent
7b393d6ab9
commit
d1941b57e9
@ -379,12 +379,13 @@ var et2_link_entry = et2_inputWidget.extend({
|
|||||||
self.options.value.app = this.app_select.val();
|
self.options.value.app = this.app_select.val();
|
||||||
|
|
||||||
// Search input
|
// Search input
|
||||||
this.search = $j(document.createElement("input")).attr("type", "search")
|
this.search = $j(document.createElement("input"))
|
||||||
|
// .attr("type", "search") // Fake it for all browsers below
|
||||||
.focus(function(){if(!self.options.application) {
|
.focus(function(){if(!self.options.application) {
|
||||||
// Adjust width, leave room for app select & link button
|
// Adjust width, leave room for app select & link button
|
||||||
self.search.css("width", "50%");self.app_select.show();
|
self.search.css("width", "50%");self.app_select.show();
|
||||||
}})
|
}})
|
||||||
.css("width", opt_count == 1 ? "100%" : "60%")
|
.css("width", opt_count == 1 ? "100%" : "50%")
|
||||||
.appendTo(this.div);
|
.appendTo(this.div);
|
||||||
|
|
||||||
this.set_blur(this.options.blur ? this.options.blur : this.egw().lang("search"), this.search);
|
this.set_blur(this.options.blur ? this.options.blur : this.egw().lang("search"), this.search);
|
||||||
@ -413,6 +414,30 @@ var et2_link_entry = et2_inputWidget.extend({
|
|||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Clear / last button
|
||||||
|
var clear = $j(document.createElement("span"))
|
||||||
|
.addClass("ui-icon ui-icon-close ui-state-default")
|
||||||
|
.click(function(e){
|
||||||
|
// No way to tell if the results is open, so if they click the button while open, it clears
|
||||||
|
if(self.last_search && self.last_search != self.search.val())
|
||||||
|
{
|
||||||
|
// Repeat last search (should be cached)
|
||||||
|
self.search.val(self.last_search);
|
||||||
|
self.last_search = "";
|
||||||
|
self.search.autocomplete("search");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Clear
|
||||||
|
self.search.autocomplete("close");
|
||||||
|
self.search.val("");
|
||||||
|
}
|
||||||
|
self.search.focus();
|
||||||
|
})
|
||||||
|
.hover(function() {$j(this).addClass("ui-state-hover");}, function() {$j(this).removeClass("ui-state-hover");})
|
||||||
|
.appendTo(this.div);
|
||||||
|
|
||||||
this.setDOMNode(this.div[0]);
|
this.setDOMNode(this.div[0]);
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -541,6 +566,9 @@ var et2_link_entry = et2_inputWidget.extend({
|
|||||||
* Ask server for entries matching selected app/type and filtered by search string
|
* Ask server for entries matching selected app/type and filtered by search string
|
||||||
*/
|
*/
|
||||||
query: function(request, response) {
|
query: function(request, response) {
|
||||||
|
// Remember last search
|
||||||
|
this.last_search = this.search.val();
|
||||||
|
|
||||||
if(request.term in this.cache) {
|
if(request.term in this.cache) {
|
||||||
return response(this.cache[request.term]);
|
return response(this.cache[request.term]);
|
||||||
}
|
}
|
||||||
@ -575,6 +603,7 @@ var et2_link_entry = et2_inputWidget.extend({
|
|||||||
{
|
{
|
||||||
event.data.options.value.id = selected.item.value;
|
event.data.options.value.id = selected.item.value;
|
||||||
}
|
}
|
||||||
|
|
||||||
event.data.search.val(selected.item.label);
|
event.data.search.val(selected.item.label);
|
||||||
|
|
||||||
},
|
},
|
||||||
|
@ -313,6 +313,20 @@ span.et2_date span {
|
|||||||
* Link wiget(s)
|
* Link wiget(s)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/* Link entry - x button*/
|
||||||
|
div.et2_link_entry {
|
||||||
|
}
|
||||||
|
.et2_link_entry input.ui-autocomplete-input {
|
||||||
|
}
|
||||||
|
.et2_link_entry .ui-icon-close {
|
||||||
|
background-color: inherit;
|
||||||
|
border: none;
|
||||||
|
position: relative;
|
||||||
|
top: -20px;
|
||||||
|
right: -91%;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
/* Link to */
|
/* Link to */
|
||||||
.et2_link_to {
|
.et2_link_to {
|
||||||
width: 350px;
|
width: 350px;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user