...
|
...
|
@@ -9,7 +9,9 @@ var $ = require('yoho.jquery'); |
|
|
var handlebars = require('yoho.handlebars');
|
|
|
var json2 = require('json2');
|
|
|
var noticeSuccess = false;
|
|
|
|
|
|
var apiDomain = 'http://api.open.yohobuy.com';
|
|
|
var vipInfoCombine = null;
|
|
|
var loginInfoCombine = null;
|
|
|
/**
|
|
|
* 判断为1的helper
|
|
|
* @param {[type]} v1 [description]
|
...
|
...
|
@@ -24,6 +26,37 @@ handlebars.registerHelper('equalone', function(v1, options) { |
|
|
return options.inverse(this);
|
|
|
}
|
|
|
});
|
|
|
/**
|
|
|
* 判断等级为3的helper
|
|
|
* @param {[type]} v1 [description]
|
|
|
* @param {[type]} options) { if (v1 [description]
|
|
|
* @return {[type]} [description]
|
|
|
*/
|
|
|
|
|
|
handlebars.registerHelper('equallevelthree', function(v1, options) {
|
|
|
|
|
|
if (v1 === '3') {
|
|
|
return options.fn(this);
|
|
|
} else {
|
|
|
return options.inverse(this);
|
|
|
}
|
|
|
});
|
|
|
|
|
|
/**
|
|
|
* 判断为0的helper
|
|
|
* @param {[type]} v1 [description]
|
|
|
* @param {[type]} options) { if (v1 [description]
|
|
|
* @return {[type]} [description]
|
|
|
*/
|
|
|
|
|
|
handlebars.registerHelper('equalzero', function(v1, options) {
|
|
|
|
|
|
if (v1 === '0') {
|
|
|
return options.fn(this);
|
|
|
} else {
|
|
|
return options.inverse(this);
|
|
|
}
|
|
|
});
|
|
|
require('../plugin/yohocookie');
|
|
|
require('../plugin/yohocart');
|
|
|
/**
|
...
|
...
|
@@ -817,6 +850,7 @@ function actionExeTemplate() { |
|
|
var resulthtml = $('#goodcartempwarpper').html().replace(/\\/g, '');
|
|
|
|
|
|
$('#goodcartempwarpper').html(resulthtml);
|
|
|
vipInfoCombine = handlebars.compile($('#tmpl-my-login-new').html())
|
|
|
}
|
|
|
/**
|
|
|
* 执行搜索
|
...
|
...
|
@@ -828,6 +862,138 @@ function actionSearch() { |
|
|
$('#query_key').search(searchDomain);
|
|
|
}
|
|
|
/**
|
|
|
* 获取登录状态
|
|
|
* @return {[type]} [description]
|
|
|
*/
|
|
|
function actionLoginState(_data) {
|
|
|
var timestamp = new Date().getTime();
|
|
|
var noLoginHtml = '<span>Hi~</span>[<a href="http://www.yohobuy.com/signin.html" class="list-a login-out ">请登录</a>] [<a href="http://www.yohobuy.com/reg.html" class="list-a login-out" onclick="">免费注册</a>]'
|
|
|
var loginHtml = '<span>Hi~<a href="http://www.yohobuy.com/home?t=' + timestamp + '">{{user_name}}</a></span> '+
|
|
|
'{{#equalone is_login}}'+
|
|
|
'[<a href="{{logout}}" class="list-a login-out">退出</a>]'+
|
|
|
'{{else}}'+
|
|
|
'[<a href="http://www.yohobuy.com/signin.html" class="list-a login-out">请登录</a>] '+
|
|
|
'[<a href="http://www.yohobuy.com/reg.html" onclick="" class="list-a login-out">免费注册</a>]'+
|
|
|
'{{/equalone}}';
|
|
|
var boxObj = $('#loginBox');
|
|
|
var info = $.cookie('_UID');
|
|
|
loginInfoCombine = handlebars.compile(loginHtml);
|
|
|
|
|
|
if (typeof info == 'undefined' || info == null) {
|
|
|
boxObj.html(noLoginHtml);
|
|
|
return false;
|
|
|
}
|
|
|
var user = info.split('::');
|
|
|
if (typeof user == 'undefined' || user.length < 4) {
|
|
|
boxObj.html(noLoginHtml);
|
|
|
return false;
|
|
|
}
|
|
|
var userName = user[0] || ' ';
|
|
|
var name = '';
|
|
|
var _length = 0;
|
|
|
for (var t = 0; t < userName.length; t++) {
|
|
|
var char = userName.substr(t, 1);
|
|
|
if (/.*[\u4e00-\u9fa5]+.*$/.test(char)) {
|
|
|
_length += 2;
|
|
|
} else {
|
|
|
_length += 1;
|
|
|
}
|
|
|
}
|
|
|
if (_length <= 10) {
|
|
|
name = userName;
|
|
|
} else {
|
|
|
_num = 0;
|
|
|
for (var t = 0; t < userName.length; t++) {
|
|
|
if (_num < 10) {
|
|
|
var char = userName.substr(t, 1);
|
|
|
if (char != '*') {
|
|
|
if (/.*[\u4e00-\u9fa5]+.*$/.test(char)) {
|
|
|
_num += 2;
|
|
|
} else {
|
|
|
_num += 1;
|
|
|
}
|
|
|
}
|
|
|
name += char;
|
|
|
}
|
|
|
}
|
|
|
if (name.length < userName.length) {
|
|
|
name += '...';
|
|
|
}
|
|
|
}
|
|
|
var _logout = '';
|
|
|
if (/http:\/\//.test(user[3])) {
|
|
|
_logout = user[3].replace('www.yohobuy.com', 'www.yohobuy.com');
|
|
|
} else {
|
|
|
_logout = 'http://www.yohobuy.com/logout_' + user[3] + '.html';
|
|
|
}
|
|
|
var data = {
|
|
|
"user_name": name,
|
|
|
"logout": _logout,
|
|
|
"random": Math.random()
|
|
|
};
|
|
|
var is_login = '1';
|
|
|
if (_data.result === -1) {
|
|
|
is_login = '-1';
|
|
|
}
|
|
|
data['is_login'] = is_login;
|
|
|
boxObj.html(loginInfoCombine(data));
|
|
|
}
|
|
|
/**
|
|
|
* 获得vip用户信息
|
|
|
* @return {[type]} [description]
|
|
|
*/
|
|
|
function actionVipInfo(_data) {
|
|
|
if (_data.result == 1) {
|
|
|
var vipInfo = _data.data;
|
|
|
|
|
|
if (typeof vipInfo == undefined || vipInfo.length < 1) {
|
|
|
return false;
|
|
|
}
|
|
|
$('#myYohoBox').mouseenter(function() {
|
|
|
$(this).addClass('acttags');
|
|
|
$('#myYohoBox .myyoho-info').show().html(vipInfoCombine(vipInfo));
|
|
|
var headUrl = $('.myyoho-photo img').attr('data-url');
|
|
|
if ($._checkUrlState == 1) {
|
|
|
$('.myyoho-photo').show().find('img').attr('src', headUrl);
|
|
|
return;
|
|
|
}
|
|
|
if (headUrl == '' || $._checkUrl != '') {
|
|
|
return;
|
|
|
}
|
|
|
$.ajax({
|
|
|
url: headUrl,
|
|
|
type: 'GET',
|
|
|
complete: function(response) {
|
|
|
if (response.status == 200 || response.status == 0) {
|
|
|
$('.myyoho-photo').show().find('img').attr('src', headUrl);
|
|
|
$._checkUrlState = 1;
|
|
|
}
|
|
|
$._checkUrl = headUrl;
|
|
|
}
|
|
|
});
|
|
|
|
|
|
;
|
|
|
});
|
|
|
$('#myYohoBox').mouseleave(function() {
|
|
|
$(this).removeClass('acttags');
|
|
|
$('#myYohoBox .myyoho-info').hide()
|
|
|
});
|
|
|
} else {}
|
|
|
}
|
|
|
/**
|
|
|
* 获取登录信息
|
|
|
* @return {[type]} [description]
|
|
|
*/
|
|
|
function actionLoginInfo() {
|
|
|
var param = {
|
|
|
method: 'open.passport.get'
|
|
|
};
|
|
|
$.getData(apiDomain, param, function(_data) {
|
|
|
actionLoginState(_data); // 更改登录状态
|
|
|
actionVipInfo(_data);//获得vip;
|
|
|
});
|
|
|
}
|
|
|
/**
|
|
|
* 初始化函数
|
|
|
* @return {[type]} [description]
|
|
|
*/
|
...
|
...
|
@@ -849,6 +1015,7 @@ function init() { |
|
|
actionClickMiniCartBox(); //点击购物车跳转
|
|
|
actionListenDelCarGoods(); //监听购物车删除
|
|
|
actionListenCartMore(); //
|
|
|
actionLoginInfo();//获取登录信息
|
|
|
}
|
|
|
|
|
|
init(); |
|
|
\ No newline at end of file |
...
|
...
|
|