Toggle navigation
Toggle navigation
This project
Loading...
Sign in
wangshusheng
/
YOHOBUYPC
·
Commits
Go to a project
GitLab
Go to dashboard
Project
Activity
Files
Commits
Pipelines
0
Builds
0
Graphs
Milestones
Issues
0
Merge Requests
0
Members
Labels
Wiki
Forks
Network
Create a new issue
Download as
Email Patches
Plain Diff
Browse Files
Authored by
biao
9 years ago
Commit
21e9bc4f5f329e845f4c31042370a4dde5d3af64
1 parent
7f54813a
update for select all feature for cart. code review by LZF
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
128 additions
and
2 deletions
static/js/cart/good.js
yohobuy/m.yohobuy.com/application/modules/Cart/controllers/Index.php
static/js/cart/good.js
View file @
21e9bc4
...
...
@@ -13,7 +13,10 @@ var dialog = require('../me/dialog'),
tip
=
require
(
'../plugin/tip'
);
var
$names
;
var
$names
,
$selectAllBtn
=
$
(
'.balance .iconfont'
);
var
requesting
=
false
;
//var $curDelPanel;
...
...
@@ -163,6 +166,129 @@ $('.cart-goods').on('touchstart', '.checkbox', function() {
// });
//})
function
requestUpdateAllGoodsCheckStatus
(
theGoods
,
successHandeler
)
{
if
(
requesting
)
{
return
;
}
requesting
=
true
;
$
.
ajax
({
url
:
'select'
,
type
:
'post'
,
data
:
{
'skuList'
:
JSON
.
stringify
(
theGoods
)},
success
:
function
(
res
)
{
if
(
res
.
code
===
200
)
{
successHandeler
();
}
else
{
tip
.
show
(
res
.
message
);
}
},
error
:
function
(
err
)
{
tip
.
show
(
'网络异常'
);
},
complete
:
function
()
{
requesting
=
false
;
}
});
}
function
didUpdateAllGoodsCheckStatus
()
{
var
$checkedBoxs
=
$
(
'.shopping-cart-good .icon-cb-checked'
),
$uncheckedBoxs
=
$
(
'.shopping-cart-good .icon-checkbox'
);
var
shouldSelectAll
;
if
(
$selectAllBtn
.
hasClass
(
'icon-cb-checked'
))
{
$selectAllBtn
.
removeClass
(
'icon-cb-checked'
).
addClass
(
'icon-checkbox'
);
shouldSelectAll
=
true
;
}
else
{
$selectAllBtn
.
removeClass
(
'icon-checkbox'
).
addClass
(
'icon-cb-checked'
);
shouldSelectAll
=
false
;
}
if
(
!
shouldSelectAll
)
{
$uncheckedBoxs
.
each
(
function
(
idx
,
uncheckedBox
)
{
$
(
uncheckedBox
).
removeClass
(
'icon-checkbox'
).
addClass
(
'icon-cb-checked'
);
});
}
else
{
$checkedBoxs
.
each
(
function
(
idx
,
checkedBox
)
{
$
(
checkedBox
).
removeClass
(
'icon-cb-checked'
).
addClass
(
'icon-checkbox'
);
});
}
}
function
bottomCheckBoxHandeler
(
isSelected
,
type
,
handlerAfterTouch
)
{
var
goodInfo
=
{};
var
$goods
=
$
(
'.cart-content:not(.hide) .shopping-cart-good'
);
var
$good
=
null
;
var
goodsList
=
[];
function
GoodInfo
(
properties
)
{
this
.
goods_type
=
properties
.
goods_type
;
this
.
buy_number
=
properties
.
buy_number
;
this
.
product_sku
=
properties
.
product_sku
;
this
.
selected
=
properties
.
selected
;
}
goodInfo
.
goods_type
=
type
;
goodInfo
.
selected
=
isSelected
?
'Y'
:
'N'
;
$goods
.
each
(
function
(
idx
,
good
)
{
$good
=
$
(
good
);
goodInfo
.
product_sku
=
$
(
good
).
data
(
'id'
);
goodInfo
.
buy_number
=
$good
.
find
(
'.count'
).
eq
(
0
).
text
().
trim
().
replace
(
'×'
,
''
);
goodsList
.
push
(
new
GoodInfo
(
goodInfo
));
});
console
.
log
(
goodsList
);
requestUpdateAllGoodsCheckStatus
(
goodsList
,
handlerAfterTouch
);
}
function
getCartType
()
{
var
$navItem
=
$
(
'.cart-nav '
).
find
(
'li'
),
type
=
'ordinary'
;
if
(
$navItem
.
eq
(
0
).
hasClass
(
'active'
))
{
type
=
'ordinary'
;
}
else
{
type
=
'advance'
;
}
return
type
;
}
function
willBeSelected
()
{
var
isSelected
=
true
;
var
$this
=
$
(
this
);
if
(
$this
.
hasClass
(
'icon-cb-checked'
))
{
isSelected
=
true
;
}
else
{
isSelected
=
false
;
}
return
isSelected
;
}
//全选按钮
$selectAllBtn
.
on
(
'touchend'
,
function
()
{
// var $this = $(this);
// if ($this.hasClass('icon-cb-checked')) {
// $this.removeClass('icon-cb-checked').addClass('icon-checkbox');
// } else {
// $this.removeClass('icon-checkbox').addClass('icon-cb-checked');
// }
bottomCheckBoxHandeler
(
willBeSelected
(),
getCartType
(),
didUpdateAllGoodsCheckStatus
);
});
$
(
'.btn-balance'
).
on
(
'touchend'
,
function
()
{
window
.
location
.
href
=
'/shoppingCart/orderEnsure?cartType='
+
'ordinary'
;
...
...
yohobuy/m.yohobuy.com/application/modules/Cart/controllers/Index.php
View file @
21e9bc4
...
...
@@ -78,7 +78,7 @@ class IndexController extends AbstractAction
$result
=
array
();
if
(
$this
->
isAjax
())
{
$productId
=
$this
->
post
(
'
id
'
,
0
);
$productId
=
$this
->
post
(
'
skuList
'
,
0
);
$uid
=
$this
->
getUid
(
true
);
$shoppingKey
=
$this
->
getSession
(
'shoppingKey'
);
$result
=
CartModel
::
selectGoods
(
$uid
,
$productId
,
$shoppingKey
);
...
...
Please
register
or
login
to post a comment