4 * Copyright (C) 2015 Matteo Nastasi
5 * mailto: nastasi@alternativeoutput.it
6 * matteo.nastasi@milug.org
7 * web: http://www.alternativeoutput.it
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
14 * This program is distributed in the hope that it will be useful, but
15 * WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABLILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 * General Public License for more details. You should have received a
18 * copy of the GNU General Public License along with this program; if
19 * not, write to the Free Software Foundation, Inc, 59 Temple Place -
20 * Suite 330, Boston, MA 02111-1307, USA.
24 var mlang_info = { 'btn_close' : { 'it' : 'Chiudi.',
29 function info_fld(dobj)
31 var fields = { login: { type: 'value' },
32 state: { type: 'value', perms: 'ro' },
33 guar: { type: 'value', perms: 'ro' },
35 widefriend: { type: 'fields', fields: { skill: { type: 'value', perms: 'ro' },
36 black: { type: 'value', perms: 'ro' },
37 test: { type: 'value', perms: 'ro'},
38 friend: { type: 'value', perms: 'ro'},
39 bff: { type: 'value', perms: 'ro'}
41 narrowfriend: { type: 'fields', fields: { skill: { type: 'value', perms: 'ro' },
42 black: { type: 'value', perms: 'ro'},
43 test: { type: 'value', perms: 'ro'},
44 friend: { type: 'value', perms: 'ro'},
45 bff: { type: 'value', perms: 'ro'}
47 match: { type: 'value', perms: 'ro' },
48 game: { type: 'value', perms: 'ro' },
49 party: { type: 'value', perms: 'ro' },
50 friend: { type: 'radio' },
51 skill: { type: 'radio' },
52 trust: { type: 'radio' }
55 var ret = new Fieldify([dobj], fields);
59 function info_show(username)
61 var info_in_in = server_request('mesg', 'chatt|/info ' +
62 encodeURIComponent(username));
63 var info_in = JSON.parse(info_in_in);
66 if (info_in.ret == 0) {
67 info = info_fld($('info'));
68 info.json2dom(info_in);
69 info_onlyifknown_isvisible();
73 var noti = new notify(gst, info_in.mesg, 0, mlang_info['btn_close'][g_lang], 400, 150);
77 var g__info_show_target = "";
78 function info_show_cb(e)
80 if (g__info_show_target == e.target.innerHTML) {
81 g__info_show_target = "";
82 info_show(e.target.innerHTML);
85 g__info_show_target = e.target.innerHTML;
93 target = $('info').getElementsByClassName('login_id')[0].innerHTML;
94 return info_show(target);
101 info = info_fld($('info'));
102 jinfo = info.dom2json();
104 ret = server_request('mesg', 'info|save','__POST__', 'info', JSON.stringify(jinfo));
107 $('info').style.visibility = 'hidden';
113 function info_onlyifknown_isvisible()
116 var arr = fieldify_get_dom_element([$('info')], 'friend');
119 for (var k = 0 ; k < arr.length ; k++) {
120 if (arr[k].checked == true) {
129 if (obj.value == 'black' || obj.value == 'unknown') {
132 $('info').getElementsByClassName('onlyifknown_gid')[0].style.visibility = vis;