/* useritem */ UserItem = { updators: { }, render: function(el, req, ok) { var txt = null; var id = el; if (!ok) { txt = 'チェックできません'; } else { try { var o = Mox.decode(req.responseText); txt = strize(o.txt); } catch (e) { txt = 'チェックできません'; } } setInner(id + '_t', txt); //setDomBackgroundColor(id, '#ffffff'); //setDomDisabled(id, false); setDomReadOnly(id, false); }, isbad: function(uid, id) { var bad = 0; var desc = ''; var a, b, c, d, e, f, x; id = strize(id); x = ''; switch (id) { case 'photodel': c = getDomChecked('photodel'); setDomDisabled('photo', c); //setDomReadOnly('photo', c); return 0; case 'usr_nick': a = xtrimDomValue('usr_nick'); if (a.length >= 1) break; setInner('usr_nick_t', '未入力です'); return 0; case 'pwch': a = !getDomChecked('pwch'); setDomDisabled('usr_pswd1', a); setDomDisabled('usr_pswd2', a); //setDomReadOnly('usr_pswd1', a); //setDomReadOnly('usr_pswd2', a); bad |= this.isbad(uid, 'usr_pswd1'); bad |= this.isbad(uid, 'usr_pswd2'); return bad; case 'usr_pswd1': a = getDomValue('usr_pswd1'); b = getDomValue('usr_pswd2'); c = (uid.length < 1) ? true : getDomChecked('pwch'); if (!c) { // } else if (a.length < 1) { bad = -1; desc = '未入力です'; } else if (a.length < 4) { bad = -1; desc = '短すぎます'; } else if (a.length > 20) { bad = -1; desc = '長すぎます'; } else if (a.search(/^[0-9A-Za-z]+$/) < 0) { bad = -1; desc = '不正な文字を含んでいます'; } setInner('usr_pswd1_t', desc); desc = ' '; //FALLTHRU case 'usr_pswd2': a = getDomValue('usr_pswd1'); b = getDomValue('usr_pswd2'); c = (uid.length < 1) ? true : getDomChecked('pwch'); if (!c) { // } else if (a != b) { bad = -1; desc = '上と異なります'; } setInner('usr_pswd2_t', desc); return bad; case 'usr_pcma1': x = xtrimDomValue('usr_pcma1'); //if (x.length >= 1) // break; if (x.length < 1) { bad = -1; setInner('usr_pcma1_t', '未入力です'); } this.isbad(uid, 'usr_mmpc'); //FALLTHRU case 'usr_pcma2': a = getDomValue('usr_pcma1'); b = xtrimDomValue('usr_pcma2'); if (a != b) { bad = -1; desc = '上と異なります'; } setInner('usr_pcma2_t', desc); if (x.length >= 1) break; return bad; case 'usr_ktma1': x = xtrimDomValue('usr_ktma1'); //if (x.length >= 1) // break; if (x.length < 1) bad = this.isbad(uid, 'usr_mmkt'); //FALLTHRU case 'usr_ktma2': a = getDomValue('usr_ktma1'); b = xtrimDomValue('usr_ktma2'); if (a != b) { bad = -1; desc = '上と異なります'; } setInner('usr_ktma2_t', desc); if (x.length >= 1) break; return bad; case 'usr_wdob': a = getDomValue('usr_wdobw'); b = getDomValue('usr_wdoby'); c = getDomValue('usr_wdobm'); d = getDomValue('usr_wdobd'); if (badwymd(a, b, c, d)) { bad = -1; desc = '不正な入力です'; } setInner('usr_wdob_t', desc); return bad; case 'usr_mama_0': case 'usr_mama_1': case 'usr_mmpc': case 'usr_mmkt': a = false; b = true; if (false) { a = getDomChecked('usr_mama_0'); b = getDomChecked('usr_mama_1'); } c = getDomChecked('usr_mmpc'); d = getDomChecked('usr_mmkt'); e = getDomValue('usr_pcma1'); f = getDomValue('usr_ktma1'); if (!b) { setInner('usr_mama_t', ''); return 0; } if (c && d) { if (e.length < 1 && f.length < 1) { bad = -1; desc = 'PCと携帯アドレスが未入力です'; } else if (f.length < 1) { bad = -1; desc = '携帯アドレスが未入力です'; } else if (e.length < 1) { bad = -1; desc = 'PCアドレスが未入力です'; } } else if (c) { if (e.length < 1) { bad = -1; desc = 'PCアドレスが未入力です'; } } else if (d) { if (f.length < 1) { bad = -1; desc = '携帯アドレスが未入力です'; } } else { bad = -1; desc = 'どちらか一方は選択してください'; } setInner('usr_mama_t', desc); return bad; case 'usr_scsn': case 'usr_gend': case 'usr_sts': setInner(id + '_t', ''); return 0; default: return 0; } //if (getDomDisabled(id)) if (getDomReadOnly(id)) return 1; if (isMiss(this.updators[id])) this.updators[id] = new Mox.Updator(id, this.render, this); if (this.updators[id].isUpdating()) return 1; //setDomDisabled(id, true); setDomReadOnly(id, true); //setDomBackgroundColor(id, '#cccccc'); setInner(id + '_t', 'チェック中です...'); var v = getDomValue(id); this.updators[id].update('/javascript/useritemx.php', { uid: uid, a: 0, key: id, val: v }); return 0; }, init: function() { //this.updators = { }; } }; Mox.init(); UserItem.init();