Add entry_with_tagname_replacements for use on tagname inputs.
Unfortunately, when adjusting the box's value, it causes the datalist to disappear, and it only comes back after you press another key. I can't figure out how to make the datalist reappear automatically with js.
This commit is contained in:
parent
53888a1787
commit
10b674e8d8
4 changed files with 22 additions and 0 deletions
|
@ -125,6 +125,15 @@ function entry_with_history_hook(event)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
common.entry_with_tagname_replacements =
|
||||||
|
function entry_with_tagname_replacements(event)
|
||||||
|
{
|
||||||
|
var cursor_position = event.target.selectionStart;
|
||||||
|
event.target.value = common.tagname_replacements(event.target.value);
|
||||||
|
event.target.selectionStart = cursor_position;
|
||||||
|
event.target.selectionEnd = cursor_position;
|
||||||
|
}
|
||||||
|
|
||||||
common.html_to_element =
|
common.html_to_element =
|
||||||
function html_to_element(html)
|
function html_to_element(html)
|
||||||
{
|
{
|
||||||
|
@ -323,6 +332,13 @@ function normalize_tagname(tagname)
|
||||||
tagname = tagname.split(".");
|
tagname = tagname.split(".");
|
||||||
tagname = tagname[tagname.length-1];
|
tagname = tagname[tagname.length-1];
|
||||||
tagname = tagname.split("+")[0];
|
tagname = tagname.split("+")[0];
|
||||||
|
tagname = common.tagname_replacements(tagname);
|
||||||
|
return tagname;
|
||||||
|
}
|
||||||
|
|
||||||
|
common.tagname_replacements =
|
||||||
|
function tagname_replacements(tagname)
|
||||||
|
{
|
||||||
tagname = tagname.replace(new RegExp(" ", 'g'), "_");
|
tagname = tagname.replace(new RegExp(" ", 'g'), "_");
|
||||||
tagname = tagname.replace(new RegExp("-", 'g'), "_");
|
tagname = tagname.replace(new RegExp("-", 'g'), "_");
|
||||||
return tagname;
|
return tagname;
|
||||||
|
|
|
@ -256,6 +256,7 @@ var PHOTO_ID = "{{photo.id}}";
|
||||||
var add_tag_box = document.getElementById('add_tag_textbox');
|
var add_tag_box = document.getElementById('add_tag_textbox');
|
||||||
var add_tag_button = document.getElementById('add_tag_button');
|
var add_tag_button = document.getElementById('add_tag_button');
|
||||||
add_tag_box.addEventListener("keyup", common.entry_with_history_hook);
|
add_tag_box.addEventListener("keyup", common.entry_with_history_hook);
|
||||||
|
add_tag_box.addEventListener("keyup", common.entry_with_tagname_replacements);
|
||||||
common.bind_box_to_button(add_tag_box, add_tag_button, false);
|
common.bind_box_to_button(add_tag_box, add_tag_button, false);
|
||||||
|
|
||||||
var message_area = document.getElementById('message_area');
|
var message_area = document.getElementById('message_area');
|
||||||
|
|
|
@ -659,8 +659,12 @@ var inputted_forbids = [];
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
||||||
input_musts.addEventListener("keyup", function(){tag_input_hook(this, inputted_musts, "search_builder_musts_inputted")});
|
input_musts.addEventListener("keyup", function(){tag_input_hook(this, inputted_musts, "search_builder_musts_inputted")});
|
||||||
|
input_musts.addEventListener("keyup", common.entry_with_tagname_replacements);
|
||||||
input_mays.addEventListener("keyup", function(){tag_input_hook(this, inputted_mays, "search_builder_mays_inputted")});
|
input_mays.addEventListener("keyup", function(){tag_input_hook(this, inputted_mays, "search_builder_mays_inputted")});
|
||||||
|
input_mays.addEventListener("keyup", common.entry_with_tagname_replacements);
|
||||||
input_forbids.addEventListener("keyup", function(){tag_input_hook(this, inputted_forbids, "search_builder_forbids_inputted")});
|
input_forbids.addEventListener("keyup", function(){tag_input_hook(this, inputted_forbids, "search_builder_forbids_inputted")});
|
||||||
|
input_forbids.addEventListener("keyup", common.entry_with_tagname_replacements);
|
||||||
|
|
||||||
common.bind_box_to_button(input_expression, document.getElementById("search_go_button"));
|
common.bind_box_to_button(input_expression, document.getElementById("search_go_button"));
|
||||||
</script>
|
</script>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -216,6 +216,7 @@ var add_tag_textbox = document.getElementById('add_tag_textbox');
|
||||||
var add_tag_button = document.getElementById('add_tag_button');
|
var add_tag_button = document.getElementById('add_tag_button');
|
||||||
var message_area = document.getElementById('message_area');
|
var message_area = document.getElementById('message_area');
|
||||||
add_tag_textbox.addEventListener("keyup", common.entry_with_history_hook);
|
add_tag_textbox.addEventListener("keyup", common.entry_with_history_hook);
|
||||||
|
add_tag_textbox.addEventListener("keyup", common.entry_with_tagname_replacements);
|
||||||
common.bind_box_to_button(add_tag_textbox, add_tag_button, false);
|
common.bind_box_to_button(add_tag_textbox, add_tag_button, false);
|
||||||
|
|
||||||
function easybake_form()
|
function easybake_form()
|
||||||
|
|
Loading…
Reference in a new issue