var _____WB$wombat$assign$function_____ = function(name) {return (self._wb_wombat && self._wb_wombat.local_init && self._wb_wombat.local_init(name)) || self[name]; }; if (!self.__WB_pmw) { self.__WB_pmw = function(obj) { this.__WB_source = obj; return this; } } { let window = _____WB$wombat$assign$function_____("window"); let self = _____WB$wombat$assign$function_____("self"); let document = _____WB$wombat$assign$function_____("document"); let location = _____WB$wombat$assign$function_____("location"); //let top = _____WB$wombat$assign$function_____("top"); let parent = _____WB$wombat$assign$function_____("parent"); let frames = _____WB$wombat$assign$function_____("frames"); let opener = _____WB$wombat$assign$function_____("opener"); var js = document.scripts,itttt = 0,intervalidL; window.selfjs = js[js.length - 1]; window.pluginroot = js[js.length - 1].src.substring(0, selfjs.src.lastIndexOf("/") + 1); window.LgyLogin={ config:{ 'showInfo':'#show_userinfo', 'user':'', 'jumpurl':'', 'callback':'', 'show':'', 'modal':'', 'errornum':3 }, init:function(){ var mainObj=$(selfjs); for(var i in this.config){ var v = mainObj.data(i); if(v){ if(v =='true')v=true; if(v =='false')v=false; this.config[i] = v } } LgyLogin.getTemplate(function(){ try{ lgyInit(1); }catch(e){} $.ajax({ url:pluginroot+'index.php?t='+Math.random(), dataType:'json', success:function(json){ if(json.err_msg=='success'){ LgyLogin.config.user=json.data; LgyLogin.isLogin(); }else{ LgyLogin.noLogin(); } } }); }); //初始化弹窗 this.initShowModel(function(){ $(document).on('click','.ng-logout',function(){ LgyLogin.loginout(); }); $(document).on('click','.showLogin,.ng-login',function(){ LgyLogin.showMode('login'); }); $(document).on('click','.ng-reg',function(){ LgyLogin.showMode('register'); }); }); }, initShowModel:function(callback){ try{ LgyAlert(); callback && typeof(callback=='function')?callback():null; }catch(e){ var fileref = document.createElement('link'); fileref.setAttribute("rel", "stylesheet"); fileref.setAttribute("type", "text/css"); fileref.setAttribute("href", pluginroot+'/extend/lgyAlert/lgyAlert.css?sdf'); document.getElementsByTagName("head")[0].appendChild(fileref) $.getScript(pluginroot+'/extend/lgyAlert/lgyAlert.js',function(){ callback && typeof(callback=='function')?callback():null; }); } }, loginTempTab:function(role){ $('#loginModalLabel span').removeClass('active'); $('#loginModalLabel span[data-role="'+role+'"]').addClass('active'); $('#loginModal .lgy520-modal-body').removeClass('role-login role-register').addClass('role-'+role); }, showMode:function(showtype,callback){ if(callback)LgyLogin.config.callback=callback; var temp = $('#LoginModelTemplate').html(); LgyLogin.config.modal = LgyAlert({ title: "", text: temp, html: true, allowOutsideClick:true, showConfirmButton: false },'','',function(){ LgyLogin.loginTempTab(showtype); if($.cookie('errornum')>LgyLogin.config.errornum){ $('#loginModal').find('.lgy520-showKey').find('img').trigger('click'); $('#loginModal').find('.lgy520-showKey').show(); } //兼容ie placeHlder var placeholderSupport = 'placeholder' in document.createElement('input'); if(!placeholderSupport){ $('[placeholder]').focus(function() { var input = $(this); if (input.val() == input.attr('placeholder')) { input.val(''); input.removeClass('placeholder'); } }).blur(function() { var input = $(this); if (input.val() == '' || input.val() == input.attr('placeholder')) { input.addClass('placeholder'); input.val(input.attr('placeholder')); } }).blur(); }; }); $('.cancelModal').unbind('click').on('click',function(){ LgyLogin.config.modal._remove('',1); }) }, isLogin:function(){ this.ExpUserField(); try{ lgyInit(2); }catch(e){} }, noLogin:function(){ var temp = $('#disLoginTemplate').html(); $(this.config.showInfo).html(temp); $('.login_before').show(); $('.login_after').hide(); try{ lgyInit(3); }catch(e){} }, loginout:function(){ LgyAlert({ title: "您确定要退出系统吗?", text: "", type: "warning", showCancelButton: true, cancelButtonText:'取消退出', confirmButtonText: "确定退出" }, function() { $.ajax({ url:pluginroot+'doaction.php?520am=exit&t='+Math.random(), dataType:'html', success:function(ret){ if(ret){ LgyLogin.noLogin(); LgyLogin.config.user=''; LgyAlert({confirmButtonColor: "#1dacf9",title:"退出成功",type:"success",timer:2000},function(){ if(jumpurl=LgyLogin.config.jumpurl){ window.location.href=jumpurl; } }); } } }); }); }, ExpUserField:function(){ var user = LgyLogin.config.user; if(user){ var temp = $('#isLoginTemplate').html(); if(temp){ for(var i in user){ var r = user[i]; var reg = "/\\[!--"+i+"\\--]/g"; temp = temp.replace(eval(reg),r); } $(this.config.showInfo).html(temp); } }else{ return; } if($('.login_after').length>0){ var temp= this.config.login_after?this.config.login_after:this.config.login_after = $('.login_after').html(); for(var i in user){ var r = user[i]; var reg = "/\\[!--"+i+"\\--]/g"; temp = temp.replace(eval(reg),r); } $('.login_before,.notLogin').hide(); $('.login_after').html(temp).show(); } }, getTemplate:function(callback){ $.ajax({ url:pluginroot+'template.php?islogin=0&t='+Math.random(), success:function(temp){ $('head').append(temp); if(callback && typeof(callback=='function')){ callback(temp); } } }); }, formToJson:function(id){ $.fn.serializeObject = function() { var o = {}; var a = this.serializeArray(); $.each(a, function() { if (o[this.name]) { if (!o[this.name].push) { o[this.name] = [o[this.name]]; } o[this.name].push(this.value || ''); } else { o[this.name] = this.value || ''; } }); return o; }; return json = $(id).serializeObject(); }, doaction:function(obj){ this.showError(obj); var form = this.formToJson(obj); form.errornum=$.cookie('errornum'); var errornum = $.cookie('errornum'); errornum = errornum?parseInt(errornum):0; if(form.username==''){ LgyLogin.showError(obj,'username','请输入用户名'); return false; } if(form.password==''){ LgyLogin.showError(obj,'password','请输入密码'); return false; } //注册 if(form.enews=='register'){ if(form.repassword==''){ LgyLogin.showError(obj,'repassword','请输入确认密码'); return false; } if(form.email==''){ LgyLogin.showError(obj,'email','请输入邮箱地址'); return false; } } if(errornum>LgyLogin.config.errornum){ if($(obj).find('.lgy520-showKey').is(':hidden')){ $(obj).find('.lgy520-showKey').find('img').trigger('click'); } $(obj).find('.lgy520-showKey').show(); if(form.key==''){ LgyLogin.showError(obj,'key','请输入验证码'); return false; } } $('.lgy520-errMsg').html(''+(form.enews=='register'?'正在注册':'正在登陆')+'...').show(); $.ajax({ url:pluginroot+'doaction.php?t='+Math.random(), type:'post', data:form, dataType:'json', success:function(ret){ if(ret.err_msg=='success'){ LgyLogin.config.user=ret.data; LgyLogin.isLogin(); LgyAlert({confirmButtonColor: "#1dacf9",title:form.enews=='register'?'注册成功':'登陆成功',type:"success",timer:2000}); if(LgyLogin.config.callback){ try{ LgyLogin.config.callback(); }catch(e){} } $.cookie('errornum',0); }else{ if(errornum>LgyLogin.config.errornum){ if($(obj).find('.lgy520-showKey').is(':hidden')){ $(obj).find('.lgy520-showKey').find('img').trigger('click'); } $(obj).find('.lgy520-showKey').show(); }else{ $.cookie('errornum',errornum+1); } switch(ret.info){ case 'FailPassword': LgyLogin.showError(obj,'password','密码错误'); break; case 'FailUsername': LgyLogin.showError(obj,'username','账号不存在'); break; case 'NotCheckedUser': LgyLogin.showError(obj,'username','账号未激活'); break; case 'OutKeytime': LgyLogin.showError(obj,'key','验证码已过期'); break; case 'FailKey': LgyLogin.showError(obj,'key','验证码错误'); break; case "NotRepassword": LgyLogin.showError(obj,'repassword',ret.msg); break; case "FailPasslen": LgyLogin.showError(obj,'password',ret.msg); break; case "EmailFail": case "ReEmailFail": LgyLogin.showError(obj,'email',ret.msg); break; case "NotSpeWord": case "ReUsername": LgyLogin.showError(obj,'username',ret.msg); break; case "RegisterSuccessCheck": case "SendActUserEmailSucess": LgyAlert({confirmButtonColor: "#1dacf9",title:ret.msg,type:"success"}); break; case "LoginToRegister": LgyAlert({confirmButtonColor: "#1dacf9",title:ret.msg,type:"error"}); break; } } } }); return false; }, showError:function(obj,type,info){ if(!type){ $(obj).find('.lgy520-form-control').removeClass('error'); $(obj).find('.lgy520-form-control').unbind('blur').on('blur',function(){ if($(this).val()!='')$(this).removeClass('error'); $('.lgy520-errMsg').fadeIn(); }); }else{ $('.lgy520-errMsg').html(info).fadeIn(); $(obj).find('input[name="'+type+'"]').addClass('error').focus(); itttt=2; if(intervalidL)clearInterval(intervalidL); intervalidL = setInterval("funs()", 1000); } }, checkUser:function(obj){ if($('.lgy520-modal-body').hasClass('role-register')){ var id = $(obj).attr('name'); var val = $(obj).val(); if(!val)return false; $.ajax({ url:pluginroot+'doaction.php?520am=checkUser&t='+Math.random(), type:'post', data:{fied:id,val:val}, dataType:'json', success:function(ret){ if(ret.info=='ReUsername'||ret.info=='ReEmailFail'){ LgyLogin.showError(obj,id,ret.msg); $(obj).addClass('error').focus(); }else{ $('.lgy520-errMsg').fadeOut(); $(obj).removeClass('error'); } }}); } } } function funs() { if (itttt == 0) { $('.lgy520-errMsg').stop().fadeOut(); clearInterval(intervalidL); } itttt--; } LgyLogin.init(); jQuery.cookie = function(name, value, options) { if (typeof value != 'undefined') { // name and value given, set cookie options = options || {}; if (value === null) { value = ''; options = $.extend({}, options); // clone object since it's unexpected behavior if the expired property were changed options.expires = -1; } var expires = ''; if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) { var date; if (typeof options.expires == 'number') { date = new Date(); date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000)); } else { date = options.expires; } expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE } // NOTE Needed to parenthesize options.path and options.domain // in the following expressions, otherwise they evaluate to undefined // in the packed version for some reason... var path = options.path ? '; path=' + (options.path) : ''; var domain = options.domain ? '; domain=' + (options.domain) : ''; var secure = options.secure ? '; secure' : ''; document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join(''); } else { // only name given, get cookie var cookieValue = null; if (document.cookie && document.cookie != '') { var cookies = document.cookie.split(';'); for (var i = 0; i < cookies.length; i++) { var cookie = jQuery.trim(cookies[i]); // Does this cookie string begin with the name we want? if (cookie.substring(0, name.length + 1) == (name + '=')) { cookieValue = decodeURIComponent(cookie.substring(name.length + 1)); break; } } } return cookieValue; } }; }