summaryrefslogtreecommitdiff
path: root/static/f/forms.js
diff options
context:
space:
mode:
Diffstat (limited to 'static/f/forms.js')
-rw-r--r--static/f/forms.js166
1 files changed, 0 insertions, 166 deletions
diff --git a/static/f/forms.js b/static/f/forms.js
index 57513735..cf03ebc4 100644
--- a/static/f/forms.js
+++ b/static/f/forms.js
@@ -1,170 +1,6 @@
function qq(v) {
return v.replace(/&/g,"&amp;").replace(/</,"&lt;").replace(/>/,"&gt;").replace(/"/g,'&quot;');
}
-function shorten(v, l) {
- return qq(v.length > l ? v.substr(0, l-3)+'...' : v);
-}
-
-
-
-
- /*****************************\
- * V N R E L A T I O N S *
- \*****************************/
-
-
-var relTypes = [];
-function relLoad() {
- var i;var l;var o;
-
- // fetch the relation types from the add new relation selectbox
- l = x('relation_new').getElementsByTagName('select')[0].options;
- for(i=0;i<l.length;i++)
- relTypes[l[i].value] = l[i].text;
-
- // read the current relations
- l = x('relations').value.split('|||');
- if(l[0]) {
- for(i=0;i<l.length;i++) {
- var rel = l[i].split(',', 3);
- relAdd(rel[0], rel[1], rel[2]);
- }
- }
- relEmpty();
-
- // make sure the title is up-to-date
- x('title').onchange = function() {
- l = x('jt_box_vn_rel').getElementsByTagName('td');
- for(i=0;i<l.length;i++)
- if(l[i].className == 'tc3')
- l[i].innerHTML = shorten(this.value, 40);
- };
-
- // bind the add-link
- x('relation_new').getElementsByTagName('a')[0].onclick = relFormAdd;
-
- // dropdown
- dsInit(x('relation_new').getElementsByTagName('input')[0], '/xml/vn.xml?q=', function(item, tr) {
- var td = document.createElement('td');
- td.innerHTML = 'v'+item.getAttribute('id');
- td.style.textAlign = 'right';
- td.style.paddingRight = '5px';
- tr.appendChild(td);
- td = document.createElement('td');
- td.innerHTML = shorten(item.firstChild.nodeValue, 40);
- tr.appendChild(td);
- }, function(item) {
- return 'v'+item.getAttribute('id')+':'+item.firstChild.nodeValue;
- }, relFormAdd);
-}
-
-function relAdd(rel, vid, title) {
- var o = document.createElement('tr');
- o.setAttribute('id', 'relation_tr_'+vid);
-
- var t = document.createElement('td');
- t.className = 'tc1';
- t.innerHTML = 'v'+vid+':<a href="/v'+vid+'">'+shorten(title, 40)+'</a>';
- o.appendChild(t);
-
- var options = '';
- for(var i in relTypes)
- options += '<option value="'+i+'"'+(i == rel ? ' selected="selected"' : '')+'>'+qq(relTypes[i])+'</option>';
- t = document.createElement('td');
- t.className = 'tc2';
- t.innerHTML = 'is a <select onchange="relSerialize()">'+options+'</select> of';
- o.appendChild(t);
-
- t = document.createElement('td');
- t.className = 'tc3';
- t.innerHTML = shorten(x('title').value, 40);
- o.appendChild(t);
-
- t = document.createElement('td');
- t.className = 'tc4';
- t.innerHTML = '<a href="#" onclick="return relDel('+vid+')">del</a>';
- o.appendChild(t);
-
- x('relation_tbl').appendChild(o);
- relEmpty();
-}
-
-function relEmpty() {
- if(x('relation_tbl').getElementsByTagName('tr').length > 0) {
- if(x('relation_tr_none'))
- x('relation_tbl').removeChild(x('relation_tr_none'));
- return;
- }
- var o = document.createElement('tr');
- o.setAttribute('id', 'relation_tr_none');
- var t = document.createElement('td');
- t.colspan = 4;
- t.innerHTML = 'No relations selected.';
- o.appendChild(t);
- x('relation_tbl').appendChild(o);
-}
-
-function relSerialize() {
- var r='';
- var i;
- var l = x('relation_tbl').getElementsByTagName('tr');
- for(i=0;i<l.length;i++) {
- var title = l[i].getElementsByTagName('td')[0];
- var rel = l[i].getElementsByTagName('select')[0];
- title = title.innerText || title.textContent;
- title = title.substr(title.indexOf(':')+1);
- r += (r ? '|||' : '')
- +rel.options[rel.selectedIndex].value
- +','+l[i].id.substr(12)+','+title;
- }
- x('relations').value = r;
-}
-
-function relDel(vid) {
- x('relation_tbl').removeChild(x('relation_tr_'+vid));
- relSerialize();
- relEmpty();
- return false;
-}
-
-function relFormAdd() {
- var txt = x('relation_new').getElementsByTagName('input')[0];
- var sel = x('relation_new').getElementsByTagName('select')[0];
- var lnk = x('relation_new').getElementsByTagName('a')[0];
- var input = txt.value;
-
- if(!input.match(/^v[0-9]+/)) {
- alert('Visual novel textbox must start with an ID (e.g. v17)');
- return false;
- }
-
- txt.disabled = true;
- txt.value = 'loading...';
- sel.disabled = true;
- lnk.innerHTML = 'loading...';
-
- ajax('/xml/vn.xml?q='+encodeURIComponent(input), function(hr) {
- txt.disabled = false;
- txt.value = '';
- sel.disabled = false;
- lnk.innerHTML = 'add';
-
- var items = hr.responseXML.getElementsByTagName('item');
- if(items.length < 1)
- return alert('Visual novel not found!');
-
- var id = items[0].getAttribute('id');
- if(x('relation_tr_'+id))
- return alert('This visual novel has already been selected!');
-
- relAdd(sel.selectedIndex, id, items[0].firstChild.nodeValue);
- sel.selectedIndex = 0;
- relSerialize();
- });
- return false;
-}
-
-
@@ -779,8 +615,6 @@ function tglSerialize() {
// load
-if(x('relations'))
- relLoad();
if(x('jt_box_vn_scr'))
scrLoad();
if(x('media'))