diff options
author | Yorhel <git@yorhel.nl> | 2020-06-04 14:30:07 +0200 |
---|---|---|
committer | Yorhel <git@yorhel.nl> | 2020-06-04 14:30:09 +0200 |
commit | 946bed68c9376e4593bd6599000cab4d3d30a5cf (patch) | |
tree | b1eaf5883c3fef5a6a3e94e65693e3a63ab516da /data/js | |
parent | 1b6d7fbb2eb4ba76d1d2c8844afaf8aa0fe4ab0a (diff) |
Delete old character edit form
Not used anymore.
Diffstat (limited to 'data/js')
-rw-r--r-- | data/js/chartraits.js | 123 | ||||
-rw-r--r-- | data/js/charvns.js | 194 | ||||
-rw-r--r-- | data/js/main.js | 4 |
3 files changed, 0 insertions, 321 deletions
diff --git a/data/js/chartraits.js b/data/js/chartraits.js deleted file mode 100644 index 968b68ee..00000000 --- a/data/js/chartraits.js +++ /dev/null @@ -1,123 +0,0 @@ -function ctrLoad() { - // load current traits - var l = byId('traits').value.split(' '); - var v = {}; // tag id -> spoiler lookup table - var q = []; // list of id=X parameters - for(var i=0; i<l.length; i++) { - if(l[i]) { - var m = l[i].split(/-/); - v[m[0]] = Math.floor(m[1]); - q[i] = 'id='+m[0]; - } - } - if(q.length > 0) - ajax('/xml/traits.xml?r=200;'+q.join(';'), function (ht) { - var t = ht.responseXML.getElementsByTagName('item'); - for(var i=0; i<t.length; i++) - ctrAdd(t[i], v[t[i].getAttribute('id')]); - }, 1); - else - ctrEmpty(); - - // dropdown - dsInit(byId('trait_input'), '/xml/traits.xml?q=', function(item, tr) { - var g = item.getAttribute('groupname'); - g = g ? g+' / ' : ''; - tr.appendChild(tag('td', { style: 'text-align: right; padding-right: 5px'}, 'i'+item.getAttribute('id'))); - tr.appendChild(tag('td', - tag('b', {'class':'grayedout'}, g), item.firstChild.nodeValue, - tag('b', {'class':'grayedout'}, item.getAttribute('applicable')=='no' ? 'not applicable' : ''))); - }, ctrFormAdd); -} - -function ctrEmpty() { - var x = byId('traits_loading'); - var t = byId('traits_tbl'); - if(x) - t.removeChild(x); - var l = byName(t, 'tr'); - var e = byId('traits_empty'); - if(e && l.length > 1) - t.removeChild(e); - else if(!e && l.length < 1) - t.appendChild(tag('tr', {id:'traits_empty',colspan:3}, tag('td', 'No traits present yet.'))); -} - -function ctrAdd(item, spoil) { - var id = item.getAttribute('id'); - var name = item.firstChild.nodeValue; - var group = item.getAttribute('groupname'); - var sp = tag('td', {'class':'tc_spoil', onclick:ctrSpoilNext, ctr_spoil:spoil}, fmtspoil(spoil)); - ddInit(sp, 'left', ctrSpoilDD); - byId('traits_tbl').appendChild(tag('tr', {ctr_id:id, ctr_spoiler:spoil}, - tag('td', {'class':'tc_name'}, - tag('b', {'class':'grayedout'}, group?group+' / ':''), - tag('a', {'href':'/i'+id}, name)), - sp, - tag('td', {'class':'tc_del'}, tag('a', {href:'#', onclick:ctrDel}, 'remove')) - )); - ctrEmpty(); - ctrSerialize(); -} - -function ctrFormAdd(item) { - var l = byName(byId('traits_tbl'), 'tr'); - for(var i=0; i<l.length; i++) - if(l[i].ctr_id && l[i].ctr_id == item.getAttribute('id')) - break; - if(i < l.length) - alert('Selected trait is already present.'); - else if(item.getAttribute('applicable') == 'no') - alert('This trait can\'t be used here.'); - else - ctrAdd(item, Math.floor(item.getAttribute('defaultspoil'))); - return ''; -} - -function ctrSpoilNext() { - if(++this.ctr_spoil > 2) - this.ctr_spoil = 0; - setText(this, fmtspoil(this.ctr_spoil)); - ddRefresh(); - ctrSerialize(); -} - -function ctrSpoilDD(lnk) { - var lst = tag('ul', null); - for(var i=0; i<=2; i++) - lst.appendChild(tag('li', i == lnk.ctr_spoil - ? tag('i', fmtspoil(i)) - : tag('a', {href: '#', onclick:ctrSpoilSet, ctr_td:lnk, ctr_sp:i}, fmtspoil(i)) - )); - return lst; -} - -function ctrSpoilSet() { - this.ctr_td.ctr_spoil = this.ctr_sp; - setText(this.ctr_td, fmtspoil(this.ctr_sp)); - ddHide(); - ctrSerialize(); - return false; -} - -function ctrDel() { - var tr = this; - while(tr.nodeName.toLowerCase() != 'tr') - tr = tr.parentNode; - tr.parentNode.removeChild(tr); - ctrEmpty(); - ctrSerialize(); - return false -} - -function ctrSerialize() { - var l = byName(byId('traits_tbl'), 'tr'); - var v = []; - for(var i=0; i<l.length; i++) - if(l[i].ctr_id) - v.push(l[i].ctr_id+'-'+byClass(l[i], 'tc_spoil')[0].ctr_spoil); - byId('traits').value = v.join(' '); -} - -if(byId('traits_tbl')) - ctrLoad(); diff --git a/data/js/charvns.js b/data/js/charvns.js deleted file mode 100644 index dcac2950..00000000 --- a/data/js/charvns.js +++ /dev/null @@ -1,194 +0,0 @@ -function cvnLoad() { - // load current links - var l = byId('vns').value.split(' '); - var v = {}; // vid -> { rid: [ role, spoil ], .. } - var q = []; // list of v=X parameters - for(var i=0; i<l.length; i++) { - if(!l[i]) - continue; - var m = l[i].split(/-/); // vid, rid, spoil, role - if(!v[m[0]]) { - q.push('v='+m[0]); - v[m[0]] = {}; - } - v[m[0]][m[1]] = [ m[3], m[2] ]; - } - if(q.length > 0) - ajax('/xml/releases.xml?'+q.join(';'), function(hr) { - var vns = byName(hr.responseXML, 'vn'); - for(var i=0; i<vns.length; i++) { - var vid = vns[i].getAttribute('id'); - cvnVNAdd(vns[i]); - var rels = byName(vns[i], 'release'); - for(var r=0; r<rels.length; r++) { - var rid = rels[r].getAttribute('id'); - if(v[vid][rid]) - cvnRelAdd(vid, rid, v[vid][rid][0], v[vid][rid][1]); - } - if(v[vid][0]) - cvnRelAdd(vid, 0, v[vid][0][0], v[vid][0][1]); - } - cvnEmpty(); - }, 1); - else - cvnEmpty(); - - // dropdown search - dsInit(byId('vns_input'), '/xml/vn.xml?q=', function(item, tr) { - tr.appendChild(tag('td', { style: 'text-align: right; padding-right: 5px'}, 'v'+item.getAttribute('id'))); - tr.appendChild(tag('td', shorten(item.firstChild.nodeValue, 40))); - }, cvnFormAdd); -} - -function cvnEmpty() { - var x = byId('vns_loading'); - var t = byId('vns_tbl'); - if(x) - t.removeChild(x); - var l = byName(t, 'tr'); - var e = byId('vns_empty'); - if(e && l.length > 1) - t.removeChild(e); - else if(!e && l.length < 1) - t.appendChild(tag('tr', {id:'vns_empty',colspan:3}, tag('td', 'No visual novels selected.'))); -} - -function cvnVNAdd(vn, rel) { - var vid = vn.getAttribute('id'); - var rels = byName(vn, 'release'); - byId('vns_tbl').appendChild(tag('tr', {id:'cvn_v'+vid, cvn_vid:vid, cvn_rels:rels}, - tag('td', {'class':'tc_vn',colspan:4}, 'v'+vid+':', - tag('a', {href:'/v'+vid}, vn.getAttribute('title')), - tag('i', '(', tag('a', {href:'#', onclick:cvnRelNew}, 'add release'), ')') - ) - )); - if(rel) - cvnRelAdd(vid, 0, 'primary', 0); - cvnEmpty(); -} - -function cvnRelAdd(vid, rid, role, spoil) { - var rels = byId('cvn_v'+vid).cvn_rels; - var rsel = tag('select', {onchange:cvnRelChange}, tag('option', {value:0}, 'All / others')); - for(var i=0; i<rels.length; i++) { - var id = rels[i].getAttribute('id'); - rsel.appendChild(tag('option', {value: id, selected:id==rid}, - '['+rels[i].getAttribute('lang')+'] '+rels[i].firstChild.nodeValue+' (r'+id+')')); - } - - var lsel = tag('select', {onchange:cvnSerialize}); - for(var i=0; i<VARS.char_roles.length; i++) - lsel.appendChild(tag('option', {value: VARS.char_roles[i][0], selected:VARS.char_roles[i][0]==role}, VARS.char_roles[i][1])); - - var ssel = tag('select', {onchange:cvnSerialize}); - for(var i=0; i<3; i++) - ssel.appendChild(tag('option', {value:i, selected:i==spoil}, fmtspoil(i))); - - var tbl = byId('vns_tbl'); - var l = byName(tbl, 'tr'); - var last = null; - for(var i=1; i<l.length; i++) - if(l[i-1].cvn_vid == vid && l[i].cvn_vid != vid) - last = l[i-1]; - tbl.insertBefore(tag('tr', {id:'cvn_v'+vid+'r'+rid, cvn_vid:vid, cvn_rid:rid}, - tag('td', {'class':'tc_rel'}, rsel), - tag('td', {'class':'tc_rol'}, lsel), - tag('td', {'class':'tc_spl'}, ssel), - tag('td', {'class':'tc_del'}, tag('a', {href:'#', onclick:cvnRelDel}, 'remove')) - ), last); -} - -function cvnRelChange() { - // look for duplicates and disallow the change - var val = this.options[this.selectedIndex].value; - var tr = this; - while(tr.nodeName.toLowerCase() != 'tr') - tr = tr.parentNode; - if(byId('cvn_v'+tr.cvn_vid+'r'+val)) { - alert('Release already present.'); - for(var i=0; i<this.options.length; i++) - this.options[i].selected = this.options[i].value == tr.cvn_rid; - return; - } - // otherwise, 'rename' this entry - tr.id = 'cvn_v'+tr.cvn_vid+'r'+val; - tr.cvn_rid = val; - cvnSerialize(); -} - -function cvnRelNew() { - var tr = this; - while(tr.nodeName.toLowerCase() != 'tr') - tr = tr.parentNode; - var id = 0; - if(byId('cvn_v'+tr.cvn_vid+'r0')) { - for(var i=0; i<tr.cvn_rels.length; i++) { - id = tr.cvn_rels[i].getAttribute('id'); - if(!byId('cvn_v'+tr.cvn_vid+'r'+id)) - break; - } - if(i == tr.cvn_rels.length) { - alert('All releases already selected.'); - return false; - } - } - cvnRelAdd(tr.cvn_vid, id, 'primary', 0); - cvnSerialize(); - return false; -} - -function cvnRelDel() { - var tbl = byId('vns_tbl'); - var tr = this; - while(tr.nodeName.toLowerCase() != 'tr') - tr = tr.parentNode; - tbl.removeChild(tr); - var l = byName(tbl, 'tr'); - var c = 0; - for(var i=0; i<l.length; i++) - if(l[i].cvn_vid == tr.cvn_vid) - c++; - if(c <= 1) - tbl.removeChild(byId('cvn_v'+tr.cvn_vid)); - cvnSerialize(); - cvnEmpty(); - return false; -} - -function cvnFormAdd(item) { - var inpt = byId('vns_input'); - inpt.disabled = true; - - ajax('/xml/releases.xml?v='+item.getAttribute('id'), function(hr) { - inpt.disabled = false; - inpt.value = ''; - - var items = byName(hr.responseXML, 'vn'); - if(items.length < 1) // shouldn't happen - return alert('Oops! Error!'); - - var id = items[0].getAttribute('id'); - if(byId('cvn_v'+id)) - return alert('VN already present.'); - cvnVNAdd(items[0], 1); - cvnSerialize(); - }, 1); - return 'Loading...'; -} - -function cvnSerialize() { - var l = byName(byId('vns_tbl'), 'tr'); - var v = []; - for(var i=0; i<l.length; i++) - if(l[i].cvn_rid != null) { - var rol = byName(byClass(l[i], 'tc_rol')[0], 'select')[0]; - var spl = byName(byClass(l[i], 'tc_spl')[0], 'select')[0]; - v.push(l[i].cvn_vid+'-'+l[i].cvn_rid+'-'+ - spl.options[spl.selectedIndex].value+'-'+ - rol.options[rol.selectedIndex].value); - } - byId('vns').value = v.join(' '); -} - -if(byId('jt_box_chare_vns')) - cvnLoad(); diff --git a/data/js/main.js b/data/js/main.js index 042c18e8..91a09422 100644 --- a/data/js/main.js +++ b/data/js/main.js @@ -39,8 +39,4 @@ VARS = /*VARS*/; // Producer editing (/p+/edit) //include prodrel.js -// Character editing (/c+/edit) -//include chartraits.js -//include charvns.js - // @license-end |