make edit form more cross-browser compatible, fixing it in firefox (#38)
This commit is contained in:
parent
17eff2e4ae
commit
ad4ae66d28
@ -32,7 +32,7 @@ function filterformToggle() {
|
||||
return false;
|
||||
}
|
||||
|
||||
function addformToggle() {
|
||||
function addformToggle(ev) {
|
||||
var a = document.getElementById('addform');
|
||||
var e = document.getElementById('editform');
|
||||
var f = document.getElementById('filterform');
|
||||
@ -67,7 +67,7 @@ function addformToggle() {
|
||||
return false;
|
||||
}
|
||||
|
||||
function editformToggle() {
|
||||
function editformToggle(ev) {
|
||||
var a = document.getElementById('addform');
|
||||
var e = document.getElementById('editform');
|
||||
var ej = document.getElementById('journalselect');
|
||||
@ -91,7 +91,7 @@ function editformToggle() {
|
||||
i.style.display = 'none';
|
||||
t.style.display = 'none';
|
||||
e.style.display = 'block';
|
||||
editformJournalSelect();
|
||||
editformJournalSelect(ev);
|
||||
} else {
|
||||
alink.style['font-weight'] = 'normal';
|
||||
elink.style['font-weight'] = 'normal';
|
||||
@ -104,14 +104,20 @@ function editformToggle() {
|
||||
return false;
|
||||
}
|
||||
|
||||
function editformJournalSelect() {
|
||||
function editformJournalSelect(ev) {
|
||||
// http://www.quirksmode.org/js/events_properties.html
|
||||
if (!ev) var e = window.event;
|
||||
if (ev.target) targ = ev.target;
|
||||
else if (ev.srcElement) targ = ev.srcElement;
|
||||
if (targ.nodeType == 3) targ = targ.parentNode;
|
||||
|
||||
var textareas = $('textarea', $('form#editform'));
|
||||
for (i=0; i<textareas.length; i++) {
|
||||
textareas[i].style.display = 'none';
|
||||
textareas[i].disabled = true;
|
||||
}
|
||||
if (event.target.value) {
|
||||
var journalid = event.target.value+'_textarea';
|
||||
if (targ.value) {
|
||||
var journalid = targ.value+'_textarea';
|
||||
var textarea = document.getElementById(journalid);
|
||||
}
|
||||
else {
|
||||
@ -122,7 +128,7 @@ function editformJournalSelect() {
|
||||
return true;
|
||||
}
|
||||
|
||||
function importformToggle() {
|
||||
function importformToggle(ev) {
|
||||
var a = document.getElementById('addform');
|
||||
var e = document.getElementById('editform');
|
||||
var f = document.getElementById('filterform');
|
||||
|
||||
@ -365,10 +365,10 @@ navlinks td = [$hamlet|
|
||||
\ | $
|
||||
^accountsregisterlink^
|
||||
\ | $
|
||||
%a#addformlink!href!onclick="return addformToggle()" add transaction
|
||||
%a#importformlink!href!onclick="return importformToggle()"!style=display:none; import transactions
|
||||
%a#addformlink!href!onclick="return addformToggle(event)" add transaction
|
||||
%a#importformlink!href!onclick="return importformToggle(event)"!style=display:none; import transactions
|
||||
\ | $
|
||||
%a#editformlink!href!onclick="return editformToggle()" edit journal
|
||||
%a#editformlink!href!onclick="return editformToggle(event)" edit journal
|
||||
|]
|
||||
-- \ | $
|
||||
where
|
||||
@ -658,9 +658,9 @@ getJournalOnlyR = do
|
||||
hamletToRepHtml $ pageLayout td [$hamlet|
|
||||
%div#journal
|
||||
%div.nav2
|
||||
%a#addformlink!href!onclick="return addformToggle()" add one transaction
|
||||
%a#addformlink!href!onclick="return addformToggle(event)" add one transaction
|
||||
\ | $
|
||||
%a#editformlink!href!onclick="return editformToggle()" edit the whole journal
|
||||
%a#editformlink!href!onclick="return editformToggle(event)" edit the whole journal
|
||||
^addform.td^
|
||||
^editform'^
|
||||
#transactions ^txns^
|
||||
@ -813,7 +813,7 @@ editform TD{j=j} = [$hamlet|
|
||||
%input!type=hidden!name=action!value=edit
|
||||
%input!type=submit!name=submit!value="save journal"
|
||||
\ or $
|
||||
%a!href!onclick="return editformToggle()" cancel
|
||||
%a!href!onclick="return editformToggle(event)" cancel
|
||||
|] -- XXX textarea ids are unquoted journal file paths, which is not valid html
|
||||
where
|
||||
manyfiles = (length $ files j) > 1
|
||||
@ -821,7 +821,7 @@ editform TD{j=j} = [$hamlet|
|
||||
|
||||
journalselect :: [(FilePath,String)] -> Hamlet AppRoute
|
||||
journalselect journalfiles = [$hamlet|
|
||||
%select!id=journalselect!name=journal!onchange="editformJournalSelect()"
|
||||
%select!id=journalselect!name=journal!onchange="editformJournalSelect(event)"
|
||||
$forall journalfiles f
|
||||
%option!value=$fst.f$ $fst.f$
|
||||
|]
|
||||
@ -836,7 +836,7 @@ importform = [$hamlet|
|
||||
%input!type=hidden!name=action!value=import
|
||||
%input!type=submit!name=submit!value="import from file"
|
||||
\ or $
|
||||
%a!href!onclick="return importformToggle()" cancel
|
||||
%a!href!onclick="return importformToggle(event)" cancel
|
||||
|]
|
||||
|
||||
postJournalOnlyR :: Handler RepPlain
|
||||
|
||||
Loading…
Reference in New Issue
Block a user