summaryrefslogtreecommitdiff
path: root/data/js
diff options
context:
space:
mode:
authorYorhel <git@yorhel.nl>2020-06-04 14:30:07 +0200
committerYorhel <git@yorhel.nl>2020-06-04 14:30:09 +0200
commit946bed68c9376e4593bd6599000cab4d3d30a5cf (patch)
treeb1eaf5883c3fef5a6a3e94e65693e3a63ab516da /data/js
parent1b6d7fbb2eb4ba76d1d2c8844afaf8aa0fe4ab0a (diff)
Delete old character edit form
Not used anymore.
Diffstat (limited to 'data/js')
-rw-r--r--data/js/chartraits.js123
-rw-r--r--data/js/charvns.js194
-rw-r--r--data/js/main.js4
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